izzi
SVG SUBSET C++ API
Loading...
Searching...
No Matches
a60-svg-graphs-line.h File Reference
#include <set>
#include "izzi-json-basics.h"
#include "a60-svg-grid-matrix-systems.h"
#include "a60-svg-render-state.h"
#include "a60-svg-markers.h"
+ Include dependency graph for a60-svg-graphs-line.h:

Go to the source code of this file.

Classes

struct  svg::graph_rstate
 Per-graph constants, metadata, configuration, text. More...
 

Namespaces

namespace  svg
 

Enumerations

enum  svg::graph_mode : ushort { svg::chart_line_style_1 = 100 , svg::chart_line_style_2 = 200 , svg::chart_line_style_3 = 300 }
 Polyline/line options. 1: use one line with css dasharray and markers mid, end points 2: use two lines: one with css dasharray and no markerspoints, two with explicit marker paths and added text tooltips 3: use two lines and add js + image tooltips: like 2 above but add image tooltips, with js controlling image visibility. More...
 

Functions

vrange svg::find_change_points (const vrange &vr)
 Simplify sorted vrange by removing interior duplicates.
 
vrange svg::find_visual_change_points (const vrange &points)
 Tramsform change points to points where the y-axis (% visual complete) changes.
 
vrange svg::find_tooltip_points (const vrange &points, const vspace &onlypoints)
 Tramsform change points to points where the x-axis (time) matches a value in onlypoints.
 
vrange svg::transform_to_graph_points (const vrange &points, const graph_rstate &gstate, const point_2t xrange, const point_2t yrange)
 Map data points to cartestian points on graph area.
 
group_element svg::make_line_graph_images (const vrange &points, const graph_rstate &gstate, const string imgprefix, const string imgpath="../filmstrip/", const string imgext=".webp")
 Return set of images for image tooltips, one for each point.
 
string svg::make_line_graph_markers (const vrange &points, const vrange &cpoints, const graph_rstate &gstate, const double radius, const string imgidbase="")
 Return set of paths of marker shapes with text tooltips.
 
svg_element svg::make_line_graph_annotations (const vrange &points, const graph_rstate &gstate, const double xscale=1, const double yscale=1, const typography typo=k::apercu_typo)
 Axis Labels Axis X/Y Ticmarks X line increments.
 
svg_element svg::make_line_graph (const vrange &points, const graph_rstate &gstate, const point_2t xrange, const point_2t yrange)
 Returns a svg_element with the rendered line graph (char). Assumptions: vgrange x axis is monotonically increasing.
 
svg_element svg::make_line_graph (const vrange &points, const vrange &tpoints, graph_rstate &gstate, const point_2t xrange, const point_2t yrange, const string metadata, script_element::scope scontext)
 Line graph 3 needs more parameters.