racket/collects/plot/scribblings/plot.scrbl
Neil Toronto 5a2aa226fb Initial commit for `typed/plot' module
I also made some minor changes to `plot' so that its functions would
type more easily. In particular, everything that used to take a list
of vectors now accepts a (Sequenceof (Sequenceof Real)). The 3D
discrete histogram renderers now also accept lists as well as vectors
in the sequence of categories.

For now, in typed/plot functions, optional non-keyword arguments are
required. As soon as Vincent closes PR 13354, I should be able to
uncomment part of a macro in "typed/plot/syntax.rkt" to make them
correctly optional.
2012-12-15 21:22:50 -07:00

52 lines
1.7 KiB
Racket

#lang scribble/manual
@(require "common.rkt")
@(define (author-email) "neil.toronto@gmail.com")
@title[#:tag "top"]{@(plot-name): Graph Plotting}
@author{@(author+email "Neil Toronto" (author-email))}
@defmodule[plot]
@defmodule*/no-declare[(typed/plot)]
@(plot-name) provides a flexible interface for producing nearly any kind of plot.
It includes many common kinds already, such as scatter plots, line plots, contour plots, histograms, and 3D surfaces and isosurfaces.
Thanks to Racket's excellent multiple-backend drawing library, @(plot-name) can render plots as manipulatable images in DrRacket, as bitmaps in slideshows, as PNG, PDF, PS and SVG files, or on any device context.
@bold{A note on backward compatibility.} @(plot-name) has undergone a major rewrite between versions 5.1.3 and 5.2.
Many programs written using PLoT 5.1.3 and earlier will still compile, run and generate plots.
Some programs will not.
Most programs use deprecated functions such as @(racket mix), @(racket line) and @(racket surface). These functions still exist for backward compatibility, but are deprecated and may be removed in the future.
If you have code written for PLoT 5.1.3 or earlier, please see @secref["porting"] (and possibly @secref["compat"]).
@table-of-contents[]
@include-section["intro.scrbl"]
@include-section["plot2d.scrbl"]
@include-section["renderer2d.scrbl"]
@include-section["plot3d.scrbl"]
@include-section["renderer3d.scrbl"]
@include-section["nonrenderer.scrbl"]
@include-section["ticks.scrbl"]
@include-section["utils.scrbl"]
@include-section["params.scrbl"]
@include-section["contracts.scrbl"]
@;@include-section["custom.scrbl"]
@include-section["porting.scrbl"]
@include-section["compat.scrbl"]
@close-plot-eval[]