Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
Imager::Plot::Axis(3) User Contributed Perl DocumentationImager::Plot::Axis(3)

       Imager::Plot::Axis - Axis handling of Imager::Plot.

	 use Imager;
	 use Imager::Plot::Axis;

	 # Create our dummy data
	 @X = 0..10;
	 @Y = map { $_**3 } @X;

	 # Create Axis object

	 $Axis = Imager::Plot::Axis->new(Width => 200, Height => 180, GlobalFont=>"ImUgly.ttf");
	 $Axis->AddDataSet(X =>	\@X, Y => \@Y);

	 $Axis->{XgridShow} = 1;  # Xgrid enabled
	 $Axis->{YgridShow} = 0;  # Ygrid disabled

	 $Axis->{Border} = "lrb"; # left right and bottom edges

	 # See Imager::Color manpage for color specification
	 $Axis->{BackGround} = "#cccccc";

	 # Override the	default	function that chooses the x range
	 # of the graph, similar exists	for y range

	 $Axis->{make_xrange} =	sub {
	     $self = shift;
	     my	$min = $self->{XDRANGE}->[0]-1;
	     my	$max = $self->{XDRANGE}->[1]+1;
	     $self->{XRANGE} = [$min, $max];

	 $img =	Imager->new(xsize=>600,	ysize => 400);
	 $img->box(filled=>1, color=>"white");

	 $Axis->Render(Xoff=>50, Yoff=>370, Image=>$img);

	 $img->write(file=>"foo.ppm") or die $img->errstr;

       This part of Imager::Plot takes care of managing	the graph area itself.
       It handles the grid, tickmarks, background in axis area and the data
       sets of course.	All the	data sets have to be given to the Axis object
       before rendering	it so that everything is only written only once	and
       scaling of axis can be done automatically.  This	also helps in doing
       chartjunk tricks	like shadows.

       The size	of the Axis area is controlled by the Width and	Height
       parameters of the "new" method.	The border region/frame	of the axis is
       considered to lie in the	coordinate system.  The	default	order of
       drawing is the following: Background image, grid, frame,	ticks.

       Note that the Axis currently renders the	ticklabels.  This might	change
       in the near future.

       Arnar M.	Hrafnkelsson,

SEE ALSO Imager, Imager::Plot, Imager::DataSet,	Imager::Style perl(1).
perl v5.32.1			  2002-08-05		 Imager::Plot::Axis(3)

NAME | SYNOPSIS | DESCRIPTION | AUTHOR | SEE ALSO Imager, Imager::Plot, Imager::DataSet, Imager::Style perl(1).

Want to link to this manual page? Use this URL:

home | help