NAME¶
PDL::Graphics::TriD::Contours - 3D Surface contours for TriD
SYNOPSIS¶
# A simple contour plot in black and white
use PDL::Graphics::TriD;
use PDL::Graphics::TriD::Contours;
$size = 25;
$x = (xvals zeroes $size,$size) / $size;
$y = (yvals zeroes $size,$size) / $size;
$z = (sin($x*6.3) * sin($y*6.3)) ** 3;
$data=new PDL::Graphics::TriD::Contours($z,
[$z->xvals/$size,$z->yvals/$size,0]);
PDL::Graphics::TriD::graph_object($data)
FUNCTIONS¶
new()¶
Define a new contour plot for TriD.
$data=new PDL::Graphics::TriD::Contours($d,[$x,$y,$z],[$r,$g,$b],$options);
where $d is a 2D pdl of data to be contoured. [$x,$y,$z] define a 3D map of $d
into the visualization space [$r,$g,$b] is an optional [3,1] piddle specifing
the contour color and $options is a hash reference to a list of options
documented below. Contours can also be colored by value using the
set_color_table function.
ContourInt => 0.7 # explicitly set a contour interval
ContourMin => 0.0 # explicitly set a contour minimum
ContourMax => 10.0 # explicitly set a contour maximum
ContourVals => $pdl # explicitly set all contour values
Label => [1,5,$myfont] # see addlabels below
Font => $font # explicitly set the font for contour labels
If ContourVals is specified ContourInt, ContourMin, and ContourMax
are ignored. If no options are specified, the algorthym tries to
choose values based on the data supplied. Font can also be specified or
overwritten by the addlabels() function below.
addlabels()¶
Add labels to a contour plot
$contour->addlabels($labelint,$segint,$font);
$labelint is the integer interval between labeled contours. If you have 8
countour levels and specify $labelint=3 addlabels will attempt to label the
1st, 4th, and 7th contours. $labelint defaults to 1.
$segint specifies the density of labels on a single contour level. Each contour
level consists of a number of connected line segments, $segint defines how
many of these segments get labels. $segint defaults to 5, that is every fifth
line segment will be labeled.
set_colortable($table)¶
Sets contour level colors based on the color table.
$table is passed in as either a piddle of [3,n] colors, where n is the number of
contour levels, or as a reference to a function which expects the number of
contour levels as an argument and returns a [3,n] piddle. It should be
straight forward to use the PDL::Graphics::LUT tables in a function which
subsets the 256 colors supplied by the look up table into the number of colors
needed by Contours.
coldhot_colortable()¶
A simple colortable function for use with the set_colortable function.
coldhot_colortable defines a blue red spectrum of colors where the smallest
contour value is blue, the highest is red and the others are shades in
between.