Paul's TODO list
This page contains my plans for enhancements to R. Remember R comes
with absolutely no warranty, and that applies to this site and this
page in particular.
Paul Murrell
paul@stat.auckland.ac.nz
-
Here's some rough notes of my
plans and their status
as at Aug 17 2002 (in Boston).
-
Base Graphics:
Overhaul the base graphics code to separate it into
device code, graphics-engine code, and R base graphics code.
See documents
changes to R base graphics and the graphics device drivers and
changes to the graphics system from 1.3.1 to 1.4.0.
Lots done, but a lot of tidying up to do; there
is a more detailed list of todos.
Also need to produce documentation for potential users of the new API.
-
Graphics Devices:
Redesign the API so that, instead of current lowest-common-denominator
approach, you can access device-specific features more easily (e.g.,
hyperlinks in PDF, SVG, depth in xfig, ...). Also, make devices
R-level objects.
-
Graphics QA:
Add QC tools for checking graphics output (with Kurt Hornik).
There is a start in an add-on package called
graphicsQC. A discussion of the issues is in the proceedings of
DSC2003.
Needs incorporating into "make check", etc.
-
Sort out display lists in R. At some point they became saveable by the
user and this creates issues that the design has not caught up with yet.
See the (grid) discussion on
saving/reusing graphics output. Also see the example
of the sort of thing that can go wrong reported on R-help by Don
MacQueen, subject: "recordPlot in 1.5.x, replayPlot in 1.6.0 problem" (and
follow-ups).
-
Font Specification:
allow user to specify font "family" for text in
R graphics. See document
changing the specification of fonts in R
Done in R 2.0.0. See "Fonts, Lines, and
Transparency" in R News 4/2.
-
Exposing plot3d code (contours, 3D plots, ...).
There is a GEcontourLines function which calculates
the contour lines; still need to do a function which draws (and optionally
labels) the contour lines.
-
Grid Graphics:
An R package of "alternative" graphical functions, the
original aim of which was to provide graphical support for being able to
produce Trellis-like graphics. This continues to grow and is now
one of the base packages in the R distribution.
Here is a more detailed todo list.
Plenty still to work on ...
-
Lattice Graphics:
Use the Grid Graphics package
to replicate as much as possible
of Trellis.
NOTE that Bill Cleveland has pointed out (and the
Trademark Electronic Search System will back him up if necessary) that neither
"Trellis" nor "Trellis Graphics" are registered trademarks (for a
statistical graphics application).
Deepayan Sarkar's lattice package.
-
Implement the "density" and "angle" arguments of polygon() as per S-Plus.
Done by Ross Ihaka.
-
Attack the long list of graphics bugs!
-
Think about ways to consolidate or even just provide indexes for all of the
graphics functions that are floating around in many different
add-on packages (e.g., Marc Schwarz's barplot2 in gregmisc, polar plot code
from Karsten Bjerre, ...)
Worth doing a CRAN Task View for graphics?
-
I am compiling a list
of missing features or inconsistencies
in R graphics that I'd like to get to.
There *might* be some useful things in here for small student projects.