in reply to Re^2: GD::Graph::area - how to set the axis origin
in thread GD::Graph::area - how to set the axis origin
As stefbv pointed out, because it is a generic graphing package where there will commonly be no relationship between the units displayed on the two axis, it makes sense to not have the Y-axis line up with the zero tick of the X-axis. To do so would be wrong for the majority of datasets.
A possible solution to your requirement is to remember that underlying GD::Graph is GD, which means you can tweak the graph after you've plotted it with all the power of the latter.
By adding the following four lines to your original code:
## Existing line my $im = $graph->plot(\@data); my $gd = $graph->gd; ## get a drawing handle ## blank out the new Y-axis position $gd->filledRectangle( 16,0, 48,300, $gd->transparent ); ## Copy the Y-axis to the new position $gd->copy( $gd, 35,0, 0,0, 15,300 ); ## Blank out the original $gd->filledRectangle( 0,0, 16,300, $gd->transparent );
You get this.
Alternatively, you might prefer to move the graph left to meet the axis and blank the residue.
|
|---|