268 lines
4.1 KiB
Markdown
268 lines
4.1 KiB
Markdown
# API Reference
|
|
|
|
## Manager
|
|
|
|
A Manager allows to manipulate multiple [Canvas](#canvas) inside a DOM
|
|
element
|
|
|
|
### Manager.parent_element
|
|
|
|
*property*: **Element**
|
|
|
|
DOM element containing every canvas Element
|
|
|
|
### Manager.list_canvas
|
|
|
|
*property*: **list<Canvas>**
|
|
|
|
List of [Canvas](#canvas) managed
|
|
|
|
### Manager.add_canvas
|
|
|
|
Add a managed canvas
|
|
|
|
Parameters:
|
|
|
|
- *width*(optional): **int**
|
|
|
|
Width in pixel of the canvas Element. Default to 100
|
|
|
|
- *height*(optional): **int**
|
|
|
|
Height in pixel of the canvas Element. Default to 100
|
|
|
|
- *position*(optional): **int**
|
|
|
|
Position of the added Canvas in the
|
|
[parent_element](#manager-parent_element) and in
|
|
[list_canvas](#manager-list_canvas). Default to 0
|
|
|
|
Return:
|
|
|
|
**Canvas**: the created [Canvas](#canvas)
|
|
|
|
### Manager.draw
|
|
|
|
Draw every managed [Canvas](#canvas)
|
|
|
|
### Manager.remove_canvas
|
|
|
|
Remove a canvas at a given position
|
|
|
|
Parameters:
|
|
|
|
- *position(optional)*: **int**
|
|
|
|
Position of the canvas to delete. Default to 0
|
|
|
|
## Canvas
|
|
|
|
### Canvas.ctx
|
|
|
|
*property*: **CanvasRenderingContext2D**
|
|
|
|
API interface of the associated canvas Element
|
|
|
|
### Canvas.figure
|
|
|
|
*property*: **Figure**
|
|
|
|
Figure held
|
|
|
|
### Canvas.draw
|
|
|
|
Render the figure to the canvas
|
|
|
|
## Figure
|
|
|
|
A figure hold multiple axes. That the object which contains every plot
|
|
elements
|
|
|
|
### Figure.width
|
|
|
|
*property*: **int**
|
|
|
|
Width of the figure (related to each axes)
|
|
|
|
### Figure.height
|
|
|
|
*property*: **int**
|
|
|
|
Height of the figure (related to each axes)
|
|
|
|
### Figure.list_axes
|
|
|
|
*property*: **list<Axes>**
|
|
|
|
List of [Axes](#axes).
|
|
|
|
### Figure.add_axes
|
|
|
|
Add an [Axes](#axes) to this figure
|
|
|
|
Parameters:
|
|
|
|
- *width*(optional): **int**
|
|
|
|
Relative width of the new [Axes](#axes). Default to 50
|
|
|
|
- *height*(optional): **int**
|
|
|
|
Relative height of the new [Axes](#axes). Default to 50
|
|
|
|
- *position*(optional): **int**
|
|
|
|
Position of the new [Axes](#axes) in the [list_axes](#figure-list_axes).
|
|
Default to 0
|
|
|
|
Return:
|
|
|
|
**Axes**: Added [Axes](#axes)
|
|
|
|
### Figure.remove_axes
|
|
|
|
Remove an [Axes](#axes) in a given position
|
|
|
|
Parameters:
|
|
|
|
- *position*: **int**
|
|
|
|
Position of the [Axes](#axes) to delete
|
|
|
|
## Axes
|
|
|
|
An Axes represents one plot in a [Figure](#figure)
|
|
|
|
### Axes.width
|
|
|
|
*property*: **int**
|
|
|
|
Width of the axes (relative to the [Figure](#figure))
|
|
|
|
### Axes.height
|
|
|
|
*property*: **int**
|
|
|
|
Height of the axes (relative to the [Figure](#figure))
|
|
|
|
### Axes.title
|
|
|
|
*property*: **String**
|
|
|
|
Title of the axes
|
|
|
|
### Axes.lines
|
|
|
|
*property*: **list<Line>**
|
|
|
|
List of lines
|
|
|
|
### Axes.plot
|
|
|
|
Plot y versus x as lines
|
|
|
|
Parameters:
|
|
|
|
- *x*: **list<Number>**
|
|
|
|
x data
|
|
|
|
- *y*: **list<Number>**
|
|
|
|
y data
|
|
|
|
- *linestyle*(optional): **object**
|
|
|
|
Object defining a style for a line. The structure of the object should
|
|
be:
|
|
```json
|
|
{
|
|
color: "color",
|
|
style: "style",
|
|
}
|
|
```
|
|
where `"color"` is a string like `rgb(x,y,z)`, or `#abcdef` or a name of
|
|
a color an,d `"style"` is `solid`, `dotted`, `dashdot` or `dashed`.
|
|
Default is "black" and "solid" for color and style.
|
|
|
|
- *label*(optional): **String**
|
|
|
|
Label that will be displayed in the legend. Default to empty String
|
|
|
|
## Line
|
|
|
|
A line, with a color and a line style
|
|
|
|
### Line.x
|
|
|
|
*property*: **list<Number>**
|
|
|
|
xdata
|
|
|
|
### Line.y
|
|
|
|
*property*: **list<Number>**
|
|
|
|
ydata
|
|
|
|
### Line.linestyle
|
|
|
|
*property*: **object**
|
|
|
|
Object defining a style for a line. The structure of the object should
|
|
be:
|
|
```json
|
|
{
|
|
color: "color",
|
|
style: "style",
|
|
}
|
|
```
|
|
where `"color"` is a string like `rgb(x,y,z)`, or `#abcdef` or a name of
|
|
a color and `"style"` is `solid`, `dotted`, `dashdot` or `dashed`
|
|
|
|
### Line.label
|
|
|
|
*property*: **String**
|
|
|
|
Label that will be displayed in the legend
|
|
|
|
### Line.draw
|
|
|
|
Draw the line in the box coordinate
|
|
|
|
Parameters:
|
|
|
|
- *ctx*: **CanvasRenderingContext2D**
|
|
|
|
Context of the canvas
|
|
|
|
- *box*: **list<list<int>>**
|
|
|
|
Box where to draw the line (absolute dimension)
|
|
|
|
- *view*: **list<list<Number>>**
|
|
|
|
Box where to draw the line (in the xdata and ydata scale). It links
|
|
absolute coordinate and value.
|
|
|
|
## get_ext_array
|
|
|
|
Get max or min of a 1d array of number
|
|
|
|
Parameters:
|
|
|
|
- *array*: **list<Number>**
|
|
|
|
Array where to get max/min values
|
|
|
|
- *f*: **function**
|
|
|
|
`Math.max` or `Math.min`
|
|
|
|
- *sign*: **int**
|
|
|
|
-1 if max, 1 if min
|
|
|
|
Return:
|
|
|
|
**Number**: Max/min value of the 1d array
|