Feature map
Everything foresight does, and where it is documented. The tutorial shows it at work; the cookbook one task at a time.
| Area | Features | Where |
|---|---|---|
| Plot styles | lines, points, linespoints, impulses, steps, fsteps, histeps, dots, yerrorbars, xerrorbars, xyerrorbars, yerrorlines, xerrorlines, xyerrorlines, boxerrorbars, boxxyerror, candlesticks, financebars, boxplot (quartiles, factors, outliers), vectors, arrows, ellipses, polygons, labels, sectors, parallelaxes, spiderplot (set paxis), boxes, filledcurves (bars from 0, bands, x1, x2, xy=, above/below; fill styles and patterns, set boxwidth), histograms clustered and row-stacked with xtic(N) category labels; gnuplot palette, dash types, widths, 15 point types and sizes; set style line, ls | gnuplot Subset, point types |
| Axes | linear and log scales, fixed or autoscaled ends extended to the ticks, reversed ranges; tick steps, mirror, printf label formats; a second y axis | Ticks, Second y axis |
| Key | inside (any corner, centred), outside, below/above in rows, box; titles as written, from column headers, or none | Key |
| Data files | whitespace, CSV or any separator; comments, blocks, datasets; using, index, every; column 0; missing values; cells read as gnuplot (C strtod) | Data Files |
| Expressions | using ($2*1e3), column("name"), ?:, 1/0 gaps, gnuplot's integer arithmetic and functions | Expressions |
| Column headers | using 1:"residual", title columnhead, set key autotitle columnhead | Column headers |
| Functions | plot sin(x)/x, sampled over the data x range, set samples, set style function | Functions |
| Smoothing | smooth unique, frequency, fnormal, cumulative, cnormal: averages of repeated x, histograms, distributions | Smoothing |
| Layout | multiplot grids with a title, panels in origin/size boxes (insets) | Multiplot |
| Output | interactive HTML (one self-contained page), SVG, text with characters (dumb) or Unicode blocks and Braille (block), in ANSI colors; atomic rewrites | Output Formats |
| Viewer | wheel and box zoom, pan, u a g h, live coordinates (y2 too), ticks and markers regenerated on zoom; series hidden from the key; panels sharing x zoomed together; following the end of a live run; the view kept in the URL | Interactive Viewer |
| Circles and pies | with circles (bubbles, wedges); foresight's with pie [donut F], slices named by xtic(N) with their percentages | Circles, pies |
| Panel charts | foresight extensions: with gauge (sweep gauges of the last value, segmented), with radar, with rose (area by value) | Gauges, radars, roses |
| Polar plots | set polar, set angles, set theta, rrange, trange, set grid polar, set border polar, rtics, ttics, set size square; functions of t | Polar plots |
| Images | with image heatmaps and rgbimage/rgbalpha colors of x:y:z grids or matrix files; palettes (rgbformulae, defined, gray, viridis, negative, maxcolors), cbrange, cblabel, color box; embedded PNG, sharp at any zoom | Images |
| Themes | foresight extension: set terminal ... theme vfd|lcd|classic [glow|noglow], 1980s dashboard colors and glow; segmented bars (fs solid segments N) with unlit cells | Themes |
| Readouts | foresight extension: with readout, the last value of an item in seven-segment digits on a glass fixed by format; blocks of readouts over the curves or filling a panel; set readout | Readouts |
| Monitoring | --watch: re-render on any change of the script or its data; reloading pages that keep the zoom or follow the newest data; the text terminal redrawn in place | Live Monitoring |
| Library | figure_object (methods mirroring gnuplot commands), script_object (the interpreter) | Fortran Library, API |
| Command line | foresight [-e CMDS] [-o OUT] [-w [S]] [SCRIPT] | Command Line |
| Engineering | pure Fortran 2018; exact tick labels from integers; byte-exact golden tests; never an IEEE exception on bad data | Architecture |