# R Lattice Package | A must-learn concept for all R programmers

In this tutorial of R lattice package, we will learn about graphs, graphics and R lattice graphs. Along with this, we will also discuss different types of lattice functions which we use in lattice graphs. So, let’s start the R Lattice package tutorial.

## Introduction to R Lattice Package

What is Lattice?

A lattice in R is known for its robust, elegant and aesthetic data visualisation system. That is, being inspired by Trellis graphics. Although, it is designed with an emphasis on multivariate data which allows easy conditioning to produce “small multiple” plots.

Stay updated with latest technology trends
Join DataFlair on Telegram!!

### 1. Lattice Graphs

The lattice package was written by Deepayan Sarkar. The package provides better defaults. It also provides the ability to display multivariate relationships and it improves on the base-R graphics. This package supports the creation of trellis graphs:

• graphs that display a variable or
• the relationship between variables, conditioned on one or
• other variables.

The typical format is:

graph_type(formula, data=)

We will select graph_type from the table listed below. The formula displays the variables and other types of conditioning.

For example:

~x|A for each level of factor (A), it displays a numerical variable which is x;
y~x | A*B for every combination of factor A and B, there exists a relationship between the variables x and y.
~x means display numeric variable x alone.

 Graph_type Description Formula Examples barchart bar chart x~A or A~x bwplot boxplot x~A or A~x cloud 3D scatter plot z~x*y|A contourplot 3D contour plot z~x*y|A Densityplot kernel density plot ~x|A*B dotplot dotplot ~x|A histogram histogram ~x levelplot 3D level plot z~y*x Parallel parallel coordinates plot data frame Splom scatterplot matrix data frame stripplot strip plots A~x or x~A xyplot scatterplot matrix y~x|A wireframe 3D wireframe graph z~y*x

Wait! Have you checked – R Graphical Models Tutorial

### 2. Customizing R Lattice Graphs

For example:

```library(lattice)
panel.smoother <- function(x, y) {
panel.xyplot(x, y) # show points
panel.loess(x, y) # show smoothed line
}
attach(mtcars)
# divide horsepower into three bands
hp <- cut(hp,3)
xyplot(mpg~wt|hp, scales=list(cex=.8, col="red"),
panel=panel.smoother,
xlab="Weight", ylab="Miles per Gallon",
main="MGP vs Weight by Horse Power")
```

Output: ### 3. R Graphics

3.1 R has two independent graphics subsystems:

Traditional graphics

• Available in R from the beginning.
• A rich collection of tools.
• Not very flexible.

Grid graphics

• recent (2000)
• A low-level tool, flexible.

3.2 Grid forms the basis of two high-level graphics systems:

• Lattice: based on Trellis graphics (Cleveland).
• ggplot2: inspired by “Grammar of Graphics”(Wilkinson).

Do you know about Graphical Data Analysis with R

### R Lattice Package

• Trellis graphics for R (developed in S).
• A powerful high-level data visualization system.
• Provides common statistical graphics with conditioning.
• Emphasis on multivariate data.
• Enough for typical graphics needs.
• Flexible enough to handle most non-standard requirements.

Traditional user interface:

• Collection of high-level functions: xyplot, dotplot, etc.
• Interface based on formula and data source.

#### High-Level Functions in Lattice

Function                     Default Display

histogram()                  Histogram
densityplot()                Kernel Density Plot
qqmath()                      Theoretical Quantile Plot
qq()                               Two-sample Quantile Plot
stripplot()                     Stripchart (Comparative 1-D Scatter Plots)
bwplot()                        Comparative Box-and-Whisker Plots
barchart()                     Bar Plot
dotplot()                       Cleveland Dot Plot
xyplot()                         Scatter Plot
splom()                         Scatter-Plot Matrix
contourplot()               Contour Plot of Surfaces
levelplot()                     False Color Level Plot of Surfaces
wireframe()                  Three-dimensional Perspective Plot of Surface
cloud()                           Three-dimensional Scatter Plot
parallel()                       Parallel Coordinates Plot

## Summary

In this R Lattice Package tutorial, we have studied in deep about different graphics and their functions. Moreover, learned their properties which help in creating graphs and functions. Still, if you have any query regarding R Lattice Package, ask in the comment section.

Now, it’s time to learn – How to Save Graphs to Files in R programming

Did you like this article? If Yes, please give DataFlair 5 Stars on Google | Facebook