- namespace: Rindow\Math\Plot\System
- classname: Figure
It is created by figure or subplots method of Plot.
Figures are separated by one or more “Axes”.
Methods
num
public function num()
Returns the figure number. It is assigned at creation.
Return
- the figure number
Example
$mo = new Rindow\Math\Matrix\MatrixOperator();
$plt = new Rindow\Math\Plot\Plot(null,$mo);
$figure = $plt->figure();
$num = $figure->num();
$figure = $plt->figure($num);
getFigSize
public function getFigSize() : array
Return [$width, $height]
Get the figure size.
Return
- width: Figure width.
- height: Figure height.
Example
$figure = $plt->figure();
[$width, $height] = $figure->getFigSize();
getAxes
public function getAxes() : array
Gets all axes included in the figure.
Return
- list of axes.
Example
[$figure,$dummy] = $plt->subplots(2,3);
$axes = $figure->getAxes();
setAxes
public function setAxes(array $axes) : void
Set all the axes included in the figure.
Arguments
- axes: List of the axes.
Example
[$figure,$axes] = $plt->subplots(2,3);
..something..
$figure->getAxes($axes);
addAxes
public function addAxes(Axes $axes) : void
Add the created axes to the figure.
Arguments
- axes: the axes.
Example
$figure->addAxes($axes);
addSubPlot
public function addSubPlot(
int $nRows=null, int $nCols=null, int $index=null,
int $rowspan=null, int $colspan=null)
Add a new axes to the figure.
Assuming positions that are separated by vertical and horizontal grids, specify whether to add to the end.
Arguments
- nRows: Number of rows in the grid.
- default is 1.
- nCols: Number of columns in the grid.
- default is 1.
- index: where to add axes.
- default is 0.
- rowspan: How many rows of the grid should be allocated to the axes height.
- default is 1.
- rowspan: How many columns of the grid should be allocated to the axes width.
- default is 1.
Return - Axes instance.
Example
$figure = $plt->figure();
$axes = $figure->addSubPlot(2,3,3);
$axes->plot($x);
$plt->show();
colorbar
public function colorbar(Mappable $mappable,Axes $ax,bool $absolute=null)
Show the scale of the displayed color.
Generally used to create Heat maps.
Arguments
- mappable: Artist displayed using a color map.
- The target Artist instance for displaying the color bar.
- ax: The axes to display.
- Specify the axes of the target you want to display.
- absolute: Whether to draw directly on the specified axes.
- If omitted or false, remove the required size area from the specified axes and display the colorbar in the empty area.
- if true, draw the entire specified axes as a colorbar.
Result
- Axes instance. It is newly created or used as a colorbar.
Examples
$fn = fn($x) => 1/sqrt(2*pi())*exp(-$x*$x/2);
$x = $mo->f($fn,$mo->arange(100,-5.0, 0.08));
$z = $mo->la()->multiply($x,$mo->la()->multiply($x,$mo->ones([100,100])),true);
$figure = $plt->figure();
$axes = $plt->subplot();
$img = $axes->imshow($z,'jet',[0.0, 0.3],[-4.0,4.0,-4.0,4.0]);
$figure->colorbar($img,$axes);
$plt->show();