X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Frrd_graph.c;h=3ac36234212b27a5579cbdffa473b02177a1b2e3;hb=47a4901e2e0ae25ca126cb929d714b417b4bf52e;hp=d22c85350a2750d36455411afa08b74308975f6c;hpb=fcbf2878a231442f4b62ee95fca39e28f04fc8d2;p=rrdtool.git diff --git a/src/rrd_graph.c b/src/rrd_graph.c index d22c853..3ac3623 100644 --- a/src/rrd_graph.c +++ b/src/rrd_graph.c @@ -1396,13 +1396,15 @@ leg_place(image_desc_t *im) /* hid legends for rules which are not displayed */ - if (im->gdes[i].gf == GF_HRULE && - (im->gdes[i].yrule < im->minval || im->gdes[i].yrule > im->maxval)) - im->gdes[i].legend[0] = '\0'; - - if (im->gdes[i].gf == GF_VRULE && - (im->gdes[i].xrule < im->start || im->gdes[i].xrule > im->end)) - im->gdes[i].legend[0] = '\0'; + if(!(im->extra_flags & FORCE_RULES_LEGEND)) { + if (im->gdes[i].gf == GF_HRULE && + (im->gdes[i].yrule < im->minval || im->gdes[i].yrule > im->maxval)) + im->gdes[i].legend[0] = '\0'; + + if (im->gdes[i].gf == GF_VRULE && + (im->gdes[i].xrule < im->start || im->gdes[i].xrule > im->end)) + im->gdes[i].legend[0] = '\0'; + } leg_cc = strlen(im->gdes[i].legend); @@ -2633,7 +2635,7 @@ scan_for_col(char *input, int len, char *output) ** - script parsing now in rrd_graph_script() */ int -rrd_graph(int argc, char **argv, char ***prdata, int *xsize, int *ysize, FILE *stream) +rrd_graph(int argc, char **argv, char ***prdata, int *xsize, int *ysize, FILE *stream, double *ymin, double *ymax) { image_desc_t im; @@ -2674,6 +2676,8 @@ rrd_graph(int argc, char **argv, char ***prdata, int *xsize, int *ysize, FILE *s *xsize=im.ximg; *ysize=im.yimg; + *ymin=im.minval; + *ymax=im.maxval; if (im.imginfo) { char *filename; if (!(*prdata)) { @@ -2799,6 +2803,7 @@ rrd_graph_options(int argc, char *argv[],image_desc_t *im) {"lazy", no_argument, 0, 'z'}, {"zoom", required_argument, 0, 'm'}, {"no-legend", no_argument, 0, 'g'}, + {"force-rules-legend",no_argument,0, 'F'}, {"only-graph", no_argument, 0, 'j'}, {"alt-y-grid", no_argument, 0, 'Y'}, {"no-minor", no_argument, 0, 'I'}, @@ -2813,7 +2818,7 @@ rrd_graph_options(int argc, char *argv[],image_desc_t *im) opt = getopt_long(argc, argv, - "s:e:x:y:v:w:h:iu:l:rb:oc:n:m:t:f:a:I:zgjYAMX:S:N", + "s:e:x:y:v:w:h:iu:l:rb:oc:n:m:t:f:a:I:zgjFYAMX:S:N", long_options, &option_index); if (opt == EOF) @@ -2838,6 +2843,9 @@ rrd_graph_options(int argc, char *argv[],image_desc_t *im) case 'g': im->extra_flags |= NOLEGEND; break; + case 'F': + im->extra_flags |= FORCE_RULES_LEGEND; + break; case 'X': im->unitsexponent = atoi(optarg); break;