Data Visualization in R
Last Updated :
21 Mar, 2024
Data visualization is the technique used to deliver insights in data using visual cues such as graphs, charts, maps, and many others. This is useful as it helps in intuitive and easy understanding of the large quantities of data and thereby make better decisions regarding it.
Data Visualization in R Programming Language
The popular data visualization tools that are available are Tableau, Plotly, R, Google Charts, Infogram, and Kibana. The various data visualization platforms have different capabilities, functionality, and use cases. They also require a different skill set. This article discusses the use of R for data visualization.
R is a language that is designed for statistical computing, graphical data analysis, and scientific research. It is usually preferred for data visualization as it offers flexibility and minimum required coding through its packages.
Consider the following airquality data set for visualization in R:
Ozone |
Solar R. |
Wind |
Temp |
Month |
Day |
41 |
190 |
7.4 |
67 |
5 |
1 |
36 |
118 |
8.0 |
72 |
5 |
2 |
12 |
149 |
12.6 |
74 |
5 |
3 |
18 |
313 |
11.5 |
62 |
5 |
4 |
NA |
NA |
14.3 |
56 |
5 |
5 |
28 |
NA |
14.9 |
66 |
5 |
6 |
Types of Data Visualizations
Some of the various types of visualizations offered by R are:
Bar Plot
There are two types of bar plots- horizontal and vertical which represent data points as horizontal or vertical bars of certain lengths proportional to the value of the data item. They are generally used for continuous and categorical variable plotting. By setting the horiz parameter to true and false, we can get horizontal and vertical bar plots respectively.
Example 1:
R
barplot (airquality$Ozone,
main = 'Ozone Concenteration in air' ,
xlab = 'ozone levels' , horiz = TRUE )
|
Output:
Example 2:
R
barplot (airquality$Ozone, main = 'Ozone Concenteration in air' ,
xlab = 'ozone levels' , col = 'blue' , horiz = FALSE )
|
Output:
Bar plots are used for the following scenarios:
- To perform a comparative study between the various data categories in the data set.
- To analyze the change of a variable over time in months or years.
Histogram
A histogram is like a bar chart as it uses bars of varying height to represent data distribution. However, in a histogram values are grouped into consecutive intervals called bins. In a Histogram, continuous values are grouped and displayed in these bins whose size can be varied.
Example:
R
data (airquality)
hist (airquality$Temp, main ="La Guardia Airport's\
Maximum Temperature (Daily)",
xlab = "Temperature(Fahrenheit)" ,
xlim = c (50, 125), col = "yellow" ,
freq = TRUE )
|
Output:
For a histogram, the parameter xlim can be used to specify the interval within which all values are to be displayed.
Another parameter freq when set to TRUE denotes the frequency of the various values in the histogram and when set to FALSE, the probability densities are represented on the y-axis such that they are of the histogram adds up to one.
Histograms are used in the following scenarios:
- To verify an equal and symmetric distribution of the data.
- To identify deviations from expected values.
Box Plot
The statistical summary of the given data is presented graphically using a boxplot. A boxplot depicts information like the minimum and maximum data point, the median value, first and third quartile, and interquartile range.
Example:
R
data (airquality)
boxplot (airquality$Wind, main = "Average wind speed\
at La Guardia Airport",
xlab = "Miles per hour" , ylab = "Wind" ,
col = "orange" , border = "brown" ,
horizontal = TRUE , notch = TRUE )
|
Output:
Multiple box plots can also be generated at once through the following code:
Example:
R
boxplot (airquality[, 0:4],
main = 'Box Plots for Air Quality Parameters' )
|
Output:
Box Plots are used for:
- To give a comprehensive statistical description of the data through a visual cue.
- To identify the outlier points that do not lie in the inter-quartile range of data.
Scatter Plot
A scatter plot is composed of many points on a Cartesian plane. Each point denotes the value taken by two parameters and helps us easily identify the relationship between them.
Example:
R
data (airquality)
plot (airquality$Ozone, airquality$Month,
main = "Scatterplot Example" ,
xlab = "Ozone Concentration in parts per billion" ,
ylab = " Month of observation " , pch = 19)
|
Output:
Scatter Plots are used in the following scenarios:
- To show whether an association exists between bivariate data.
- To measure the strength and direction of such a relationship.
Heat Map
Heatmap is defined as a graphical representation of data using colors to visualize the value of the matrix. heatmap() function is used to plot heatmap.
Syntax: heatmap(data)
Parameters: data: It represent matrix data, such as values of rows and columns
Return: This function draws a heatmap.
R
data <- matrix ( rnorm (50, 0, 5), nrow = 5, ncol = 5)
colnames (data) <- paste0 ( "col" , 1:5)
rownames (data) <- paste0 ( "row" , 1:5)
heatmap (data)
|
Output:
Map visualization in R
Here we are using maps package to visualize and display geographical maps using an R programming language.
install.packages("maps")
R
data <- read.csv ( "worldcities.csv" )
df <- data.frame (data)
library (maps)
map (database = "world" )
points (x = df$lat[1:500], y = df$lng[1:500], col = "Red" )
|
Output:
3D Graphs in R
Here we will use preps() function, This function is used to create 3D surfaces in perspective view. This function will draw perspective plots of a surface over the x–y plane.
Syntax: persp(x, y, z)
Parameter: This function accepts different parameters i.e. x, y and z where x and y are vectors defining the location along x- and y-axis. z-axis will be the height of the surface in the matrix z.
Return Value: persp() returns the viewing transformation matrix for projecting 3D coordinates (x, y, z) into the 2D plane using homogeneous 4D coordinates (x, y, z, t).
R
cone <- function (x, y){
sqrt (x ^ 2 + y ^ 2)
}
x <- y <- seq (-1, 1, length = 30)
z <- outer (x, y, cone)
persp (x, y, z,
main= "Perspective Plot of a Cone" ,
zlab = "Height" ,
theta = 30, phi = 15,
col = "orange" , shade = 0.4)
|
Output:
Advantages of Data Visualization in R:
R has the following advantages over other tools for data visualization:
- R offers a broad collection of visualization libraries along with extensive online guidance on their usage.
- R also offers data visualization in the form of 3D models and multipanel charts.
- Through R, we can easily customize our data visualization by changing axes, fonts, legends, annotations, and labels.
Disadvantages of Data Visualization in R:
R also has the following disadvantages:
- R is only preferred for data visualization when done on an individual standalone server.
- Data visualization using R is slow for large amounts of data as compared to other counterparts.
Application Areas:
- Presenting analytical conclusions of the data to the non-analysts departments of your company.
- Health monitoring devices use data visualization to track any anomaly in blood pressure, cholesterol and others.
- To discover repeating patterns and trends in consumer and marketing data.
- Meteorologists use data visualization for assessing prevalent weather changes throughout the world.
- Real-time maps and geo-positioning systems use visualization for traffic monitoring and estimating travel time.
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...