# Introduction to Lattice Graphics Richard Pugh 4th December 2012.

## Presentation on theme: "Introduction to Lattice Graphics Richard Pugh 4th December 2012."— Presentation transcript:

Introduction to Lattice Graphics Richard Pugh 4th December 2012

Agenda Overview of Lattice Functions Creating basic graphics
Panelled Graphics Grouped Data Multiple Variables Writing Panel Functions Summary

The Data We Will Use Something relevant and sector independent London Tube Performance Data from the TFL website Excess Travel Hours by Line

Overview of Lattice Graphics

Overview of Lattice Graphics
One of the graphic systems of R (others include “Traditional” and “GGPlot”) An implementation of the S+ “Trellis” Graphics Written by Deepayan Sarkar, Fred Hutchinson Cancer Research Center

List of Lattice Graphic Functions
Description Graph Type xyplot Scatter plot Bivariate histogram Univariate histogram Univariate densityplot Univariate density line plot barchart Bar chart bwplot Box and whisker plot qq Normal QQ plot dotplot Label dot plot cloud 3D scatter plot 3D wireframe 3D surface plot splom Scatter matrix plot Data Frame parallel Multivariate parallel plot

Key Function Arguments
Description x Plot definition, typically as a formula data The data frame used for the graphic subset Any subsets to be applied to the data panel Function used to draw data in each “panel” groups Grouping variable for the plot Type of graph Formula Y axis X axis Z axis Univariate ~ Y Y - Bivariate Y ~ X X 3D Z ~ X*Y Z Data Frame ~ Data Data

Creating Basic Graphics

Panelled Graphics

Specifying Panels We can use the vertical pipe symbol “|” in order to specify “panels” to be plotted This allows us to create the graphics “by” one or more variables

Panel Variables During the plot creation, lattice builds a plot data frame containing the variables to plot By this time, any categorical “by” variables need to be factors So, either change them to characters or factors beforehand

Panel Ordering! If you have a factor variable, the ordering of the panels is in “graph” and not “table” order (!!) We can resolve using as.table = TRUE Note that the converting of characters to factors uses alphabetical ordering

Grouped Data

Grouped Data We can specify groupings within our data in order to plot these groupings separately By default, lattice will vary styling of the groups specified The key argument is the “groups” argument

Take care!

Controlling Styles Best done via the underlying lattice style templates Use of par.settings argument which takes a list of styles We usually use a basic template and change elements of it The show.settings function lets you see the current (or adapted) styles

Multiple Variables

Multiple Variables We can specify one or more X or Y axis variable in our lattice formula This can overwrite the “groups” input The “outer” argument controls how the multiple X/Y variables should be plotted

Writing Panel Functions

Panel Functions For each lattice graph, R performs the following actions: Partitions the data Draws the graph “outline” (i.e. the “panels”) Passes the data for each panel into the “panel” function We can overwrite this panel function and supply our own …

Panel Functions The default “panel” function for a lattice function is “panel.NameOfFunction” Let’s look at panel.xyplot …

Arguments for styling Jitter & other less used bits Let’s write our own panel function …….

Now what? Now we can insert other functions into a panel function which will then impact each individual plot panel We can call: Lattice “low level functions” (lpoints, ltext, llines, lpolygon etc) Existing “panel.” functions that exist for this purpose

Summary

Summary This was just a quick overview of lattice graphics
I hope it was useful For more info, look in the Lattice book, find examples online or contact Mango …