23void mnbins(
double,
double,
int,
double &,
double &,
int &,
double &);
25void mnplot(
double *xpt,
double *ypt,
char *chpt,
int nxypt,
int npagwd,
int npagln)
42 double bwidx, bwidy, xbest, ybest, ax, ay, bx, by;
43 double xvalus[12], any, dxx, dyy;
44 int iten, i, j, k, maxnx, maxny, iquit, ni, linodd;
45 int nxbest, nybest, km1, ibk, isp1, nx, ny, ks, ix;
53 maxnx = npagwd - 20 < 100 ? npagwd - 20 : 100;
66 for (i = 1; i <= km1; ++i) {
69 for (j = 1; j <= ni; ++j) {
70 if (ypt[j - 1] > ypt[j])
79 chpt[j - 1] = chpt[j];
89 for (i = 1; i <= nxypt; ++i) {
90 if (xpt[i - 1] >
xmax)
92 if (xpt[i - 1] <
xmin)
100 ymin = ypt[nxypt - 1];
120 for (i = 1; i <= nxypt; ++i) {
121 xpt[i - 1] = ax * xpt[i - 1] + bx;
122 ypt[i - 1] = any - ay * ypt[i - 1] - by;
124 nxbest =
int((ax * xbest + bx));
125 nybest =
int((any - ay * ybest - by));
132 for (i = 1; i <= ny; ++i) {
133 for (ibk = 1; ibk <= nx; ++ibk) {
134 cline[ibk - 1] =
' ';
137 cline[nx + 1] =
'\0';
142 cline[nxbest - 1] =
'.';
143 if (i != 1 && i != nybest && i != ny)
145 for (j = 1; j <= nx; ++j) {
153 for (k = isp1; k <= nxypt; ++k) {
154 ks =
int(ypt[k - 1]);
157 ix =
int(xpt[k - 1]);
158 if (cline[ix - 1] ==
'.')
160 if (cline[ix - 1] ==
' ')
162 if (cline[ix - 1] == chpt[k - 1])
170 cline[ix - 1] = chpt[k - 1];
177 if (linodd == 1 || i == ny)
180 memcpy(ctemp, cline, 120);
181 printf(
" %s", (
const char *)ctemp);
185 memcpy(ctemp, cline, 120);
186 printf(
" %14.7g ..%s", yprt, (
const char *)ctemp);
192 for (ibk = 1; ibk <= nx; ++ibk) {
193 cline[ibk - 1] =
' ';
195 cline[ibk - 1] =
'/';
197 printf(
" %s", cline);
200 for (ibk = 1; ibk <= 12; ++ibk) {
201 xvalus[ibk - 1] =
xmin +
double(ibk - 1) * 10 * bwidx;
204 iten = (nx + 9) / 10;
205 for (ibk = 1; ibk <= iten; ++ibk) {
206 printf(
" %9.4g", xvalus[ibk - 1]);
211 char chmess[] =
" Overprint character is &";
212 printf(
" ONE COLUMN=%13.7g%s", bwidx, (
const char *)chmess);
215 printf(
" ONE COLUMN=%13.7g%s", bwidx, (
const char *)chmess);
void mnplot(double *xpt, double *ypt, char *chpt, int nxypt, int npagwd, int npagln)
void mnbins(double a1, double a2, int naa, double &bl, double &bh, int &nb, double &bwid)
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.