How to create visualizations with iPlots package in R

July 2, 2017
By

(This article was first published on R-exercises, and kindly contributed to R-bloggers)

INTRODUCTION

iPlots is a package which provides interactive statistical graphics, written in Java. You can find many interesting plots such as histograms, barcharts, scatterplots, boxplots, fluctuation diagrams, parallel coordinates plots and spineplots. The amazing part is that all of these plots support querying, linked highlighting, color brushing, and interactive changing of parameters.

Furthermore, iPlots includes an API for managing plots and adding user-defined objects, such as lines or polygons to a plot.

PACKAGES & DATA

In order to use the iPlots package we have to install and call it. Moreover we need a dataset to work with. Tha dataset we chose in our case is “Cars93” which contains data from 93 Cars on Sale in the USA in 1993 and we can find it in the MASS package which of course must be installed and called too. To install and call those packages and attach the “Cars93” dataset use:

install.packages("iplots")
install.packages("MASS")
library(iplots)
library(MASS)
data("Cars93")
attach(Cars93)

You can use head(Cars93) in order to see the variables of your dataset.

PLOTS

Mosaic Plot

Some of the most important features that mosaic plots in iPlots provide are standard selection, highlighting, color brushing, reordering of variables and addition or exclusion of variables. An example of a mosaic plot with iPlots follows:

library(iplots)
library(MASS)
data("Cars93")
attach(Cars93)
imosaic(data.frame(AirBags,Cylinders,Origin))

iPlots through Model View also allows same Binsize, Fluctuation Diagram and Multiple Barchart. In order to rearrange the variables use the four arrow keys

Note that you can gain further information about your plot using -mouse-over and ctlr.

Barcharts

Barcharts in iPlots also feature Spineplots (use ctrl-s or the “View” menu to switch between the two representations). See the example below.

library(MASS)
data(Cars93)
attach(Cars93)
ibar(Cylinders)

To get a spineplot via the command line use:

ibar(Cylinders, isSpine=T)

You can reorder Bars with two ways. Firstly by using the options in the “View” menu and secondly by -dragging a bar to the position you wish.
Of course you can order the categories through R in a barchart. Look at the example below:

levels(AirBags)
[1] "Driver & Passenger" "Driver only" "None"

AirBags2 <- ordered(AirBags,
c("None", "Driver only", "Driver & Passenger"))

levels(AirBags2)
[1] "None" "Driver only" "Driver & Passenger"

ibar(AirBags)
ibar(AirBags2)

Parallel Plots

I. Parallel Coordinate Plot

A parallel coordinate plot connects all cases by lines. Look at the example below which creates a Parallel Coordinate Plot for the continuous variables “Cylinders” and “Passengers” of the “Cars93” dataset.

ipcp(Cars93[c(Cylinders, Passengers)])

Parallel Boxplot

Parallel boxplots are used to compare distributions of variables. Look how to create a parallel boxplot for all “MPG” variables of the”Cars93″ dataset

ibox(Cars93[c(7,8)])

All options can be found in the “View” menu of the plot. Note, that the scale is only displayed when all variables share the same scale!

III. Boxplot y by x

Boxplots y by x show boxplots by group. If ibox() is called with a continuous variable and a factor, a boxplot y by x is created. Look at the example to see how to split “Horsepower” by “Passengers”.
ibox(Horsepower, Passengers)

Note that a boxplot y by x always uses the same scale for all boxplots for a proper comparison.

To leave a comment for the author, please follow the link and comment on their blog: R-exercises.

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...



If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.

Sponsors

Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)