## This function is used within the default (any user defined)
## 2d plot functions
##
my_2d_plot <- function(zargs, your_name = "BillyBob", ...) {
                   data_2d <- extract_2d(zargs)
                   msg <- paste("Components of zargs available",
                                "to construct a 2d plot for ",
                                your_name)
                   print(msg)
                   ## just print the names of the data components
                   ## which you might want to use in your plot
                   print(names(data_2d))
                   ## You can plot whatever you want using the information in
                   ## could use any of these to construct any 1d plot you want
                   ## using R's graphics or any of zemplot's built in 1d plots.
                   ##
                   ## For example, here we could use
                   ## use zenplot's base graphics functions
                   ## First a scatterplot
                   points_2d_graphics(zargs, ...)
                   ## to which we overlay density contours
                   density_2d_graphics(zargs, add = TRUE, col = "steelblue", ...)
                   ## similar functions could be called for the other packages.
                   ## You can print the source of anyone of the default functions
                   ## to get some idea of managing details.
                }
## And now try it out
zenplot(iris, plot2d = my_2d_plot)
Run the code above in your browser using DataLab