The plot Reference Manual

This is the plot Reference Manual, version 1.0.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sat Dec 03 22:53:50 2022 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 plot

A plotting system for Common Lisp

Long Name

Common Lisp Vega Plotting

Author

Steve Nunez <>

Home Page

https://lisp-stat.dev/docs/tasks/plotting/

Source Control

(GIT https://github.com/Lisp-Stat/plot.git)

Bug Tracker

https://github.com/Lisp-Stat/plot/issues

License

MS-PL

Long Description

Plot is a general front end for describing plots. The front end handles interaction with the display, a local window or a browser, and backends handle the rendering. There are backends for Vega and Vega-Lite, as well as text.

If updating a backend, be certain to bump the version number in the .asd file as well.

Version

1.0.0

Dependencies
  • cl-ppcre (system).
  • alexandria (system).
  • alexandria+ (system).
  • data-frame (system).
Source

plot.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 plot/plot.asd

Source

plot.asd.

Parent Component

plot (system).

ASDF Systems

plot.


3.1.2 plot/pkgdcl.lisp

Source

plot.asd.

Parent Component

plot (system).

Packages

plot.


3.1.3 plot/init.lisp

Dependency

pkgdcl.lisp (file).

Source

plot.asd.

Parent Component

plot (system).


3.1.4 plot/browser.lisp

Dependency

init.lisp (file).

Source

plot.asd.

Parent Component

plot (system).

Public Interface
Internals

3.1.5 plot/plot.lisp

Dependency

browser.lisp (file).

Source

plot.asd.

Parent Component

plot (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 plot

Functionality common to all plotting. The plot class is defined here, with each backend subclassing it. Functions for interacting with display systems, like the browser or Electron/Webview are also defined here

Source

pkgdcl.lisp.

Use List
  • alexandria.
  • alexandria+.
  • common-lisp.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Special variables

Special Variable: *browser-commands*
Package

plot.

Source

browser.lisp.

Special Variable: *default-browser-command*
Package

plot.

Source

browser.lisp.

Special Variable: *default-browser-options*
Package

plot.

Source

browser.lisp.


5.1.2 Ordinary functions

Function: plot-from-file (filespec &key browser browser-options)

Open FILESPEC with browser. FILESPEC must be displayable by the browser, e.g. HTML.

Package

plot.

Source

plot.lisp.


5.1.3 Generic functions

Generic Reader: plot-data (object)
Generic Writer: (setf plot-data) (object)
Package

plot.

Methods
Reader Method: plot-data ((plot plot))
Writer Method: (setf plot-data) ((plot plot))

A DATA-FRAME OR PLIST of key/column pairs. Internally, a PLIST will will be converted to a DATA-FRAME by the rendering functions. A PLIST can sometimes be more convenient for ad-hoc plotting.

Source

plot.lisp.

Target Slot

data.

Generic Reader: plot-name (object)
Package

plot.

Methods
Reader Method: plot-name ((plot plot))

automatically generated reader method

Source

plot.lisp.

Target Slot

name.

Generic Writer: (setf plot-name) (object)
Package

plot.

Methods
Writer Method: (setf plot-name) ((plot plot))

automatically generated writer method

Source

plot.lisp.

Target Slot

name.

Generic Reader: plot-spec (object)
Generic Writer: (setf plot-spec) (object)
Package

plot.

Methods
Reader Method: plot-spec ((plot plot))
Writer Method: (setf plot-spec) ((plot plot))

The plot specification in PLIST format. The PLIST is passed to YASON for encoding to the backend specific JSON. See the file encode.lisp in the Vega backend for examples of how this is done.

Source

plot.lisp.

Target Slot

spec.


5.1.4 Classes

Class: plot

Base class for plots

Package

plot.

Source

plot.lisp.

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

plot-name.

Writers

(setf plot-name).

Slot: data

A DATA-FRAME OR PLIST of key/column pairs. Internally, a PLIST will will be converted to a DATA-FRAME by the rendering functions. A PLIST can sometimes be more convenient for ad-hoc plotting.

Initargs

:data

Readers

plot-data.

Writers

(setf plot-data).

Slot: spec

The plot specification in PLIST format. The PLIST is passed to YASON for encoding to the backend specific JSON. See the file encode.lisp in the Vega backend for examples of how this is done.

Initargs

:spec

Readers

plot-spec.

Writers

(setf plot-spec).


5.2 Internals


5.2.1 Special variables

Special Variable: *default-chrome-options*
Package

plot.

Source

browser.lisp.


5.2.2 Ordinary functions

Function: %print-alist (stream data &rest args)
Package

plot.

Source

browser.lisp.

Function: encode-application-options (options arg-format)

Turns OPTIONS, an alist, into a command line argument list according to ARG-FORMAT

Package

plot.

Source

browser.lisp.

Function: encode-chrome-options (options)

Encode command line options for Chrome

Package

plot.

Source

browser.lisp.

Function: find-chrome-executable-linux ()

Find Chrome’s executable for Linux distributions

Package

plot.

Source

browser.lisp.

Function: make-plot (name &optional data spec)

Plot constructor

Package

plot.

Source

plot.lisp.

Function: set-chrome-size (size)

Set the windows size in *default-browser-options*

Package

plot.

Source

browser.lisp.


5.2.3 Generic functions

Generic Function: write-plot (plot device)

Write PLOT to DEVICE
May not be immediately visible to the user, depending on the device.
A device could be a webserver, where a PUT operation would write the plot, locations on disk, a github gist, etc.

Package

plot.

Source

plot.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
E   F   G   M   P   S   W  
Index Entry  Section

%
%print-alist: Private ordinary functions

(
(setf plot-data): Public generic functions
(setf plot-data): Public generic functions
(setf plot-name): Public generic functions
(setf plot-name): Public generic functions
(setf plot-spec): Public generic functions
(setf plot-spec): Public generic functions

E
encode-application-options: Private ordinary functions
encode-chrome-options: Private ordinary functions

F
find-chrome-executable-linux: Private ordinary functions
Function, %print-alist: Private ordinary functions
Function, encode-application-options: Private ordinary functions
Function, encode-chrome-options: Private ordinary functions
Function, find-chrome-executable-linux: Private ordinary functions
Function, make-plot: Private ordinary functions
Function, plot-from-file: Public ordinary functions
Function, set-chrome-size: Private ordinary functions

G
Generic Function, (setf plot-data): Public generic functions
Generic Function, (setf plot-name): Public generic functions
Generic Function, (setf plot-spec): Public generic functions
Generic Function, plot-data: Public generic functions
Generic Function, plot-name: Public generic functions
Generic Function, plot-spec: Public generic functions
Generic Function, write-plot: Private generic functions

M
make-plot: Private ordinary functions
Method, (setf plot-data): Public generic functions
Method, (setf plot-name): Public generic functions
Method, (setf plot-spec): Public generic functions
Method, plot-data: Public generic functions
Method, plot-name: Public generic functions
Method, plot-spec: Public generic functions

P
plot-data: Public generic functions
plot-data: Public generic functions
plot-from-file: Public ordinary functions
plot-name: Public generic functions
plot-name: Public generic functions
plot-spec: Public generic functions
plot-spec: Public generic functions

S
set-chrome-size: Private ordinary functions

W
write-plot: Private generic functions