# Plot columns from list of dataframes in R

• Last Updated : 22 Sep, 2021

In this article, we will discuss how to plot columns from a list of dataframes in R programming language.

Note: We are taking a line plot for implementation same can be applied to any other plot.

The ggplot() method is supplemented by different geometrical shapes to indicate the type of data plotting. The geom_line() method is used to plot the data in the form of lines.

Syntax:

geom_line()

We will be using the lapply() method in base R which applies a function, which may be user defined or pre-defined to the input data object.

Syntax:

lapply(list-of-data-frame, FUN)

Parameter :

• list-of-data-frame – The list of dataframes formed.
• FUN – The FUN here is the ggplot() method along with the mappings and geometrical plot visualizations to be used.

Let’s move to implementation, to understand the concept better.

Example 1: Plot columns from a list of two dataframes

## R

 `library``(``"ggplot2"``) ` ` `  `# create first dataframe ` `data_frame1<-``data.frame``(col1=``c``(``rep``(``'Jan2021'``,5), ` `                               ``rep``(``'Feb2021'``,5), ` `                               ``rep``(``'Mar2021'``,5)),  ` `                ``col2=``rnorm``(15), ` `                ``col3=``rep``(1:5,3)  ` `                ``) ` ` `  `# create second dataframe ` `data_frame2<-``data.frame``(col1=``c``(``rep``(``'Jan2021'``,5), ` `                               ``rep``(``'Feb2021'``,5), ` `                               ``rep``(``'Mar2021'``,5)),  ` `                 ``col2=``rnorm``(15), ` `                 ``col3=``rep``(1:5,3)  ` `                 ``) ` ` `  `# creating list of dataframes ` `data_frames<-``list``(data_frame1, data_frame2) ` ` `  `graph<-``lapply``(data_frames,``function``(x) ` `  ``p<-``ggplot``(x,``aes``(x= col3,y= col2,color=``factor``(col1), ` `                  ``group=``factor``(col1))) + ` `    ``geom_line``() +  ` `    ``facet_wrap``(~col1) ` `) ` `print ``(graph)`

Output

Example 2: Example to show usage of three dataframes to form the list

## R

 `library``(``"ggplot2"``) ` ` `  `# create first dataframe ` `data_frame1<-``data.frame``(col1=``c``(``rep``(``'Grp1'``,2),``rep``(``'Grp2'``,2),``rep``(``'Grp3'``,2)),  ` `                ``col2=``rep``(``letters``[1:3],2), ` `                ``col3=``rep``(1:2,3)  ` `                ``) ` ` `  `# create second dataframe ` `data_frame2<-``data.frame``(col1=``c``(``rep``(``'Grp1'``,2),``rep``(``'Grp2'``,2),``rep``(``'Grp3'``,2)),  ` `                        ``col2=``rep``(``letters``[1:3],2), ` `                        ``col3=``rep``(1:2,3)  ` `) ` ` `  `# creating list of dataframes ` `data_frames<-``list``(data_frame1, data_frame2) ` ` `  `graph<-``lapply``(data_frames, ` `              ``function``(x) ` `                ``p<-``ggplot``(x,``aes``(x= col3,y= col2,color=``factor``(col1), ` `                                ``group=``factor``(col1))) + ` `                ``geom_line``() +  ` `                ``facet_wrap``(~col1) ` `) ` ` `  `print ``(graph)`

Output

Example 3: plotting different types of dataframes

## R

 `library``(``"ggplot2"``) ` ` `  `# create first dataframe ` `data_frame1<-``data.frame``(col1=``c``(``rep``(``'Jan2021'``,5),``rep``(``'Feb2021'``,5),``rep``(``'Mar2021'``,5)),  ` `                        ``col2=``rnorm``(15), ` `                        ``col3=``rep``(1:5,3)  ` `) ` ` `  `# create second dataframe ` `data_frame2<-``data.frame``(col1=``c``(``rep``(``'Grp1'``,2),``rep``(``'Grp2'``,2),``rep``(``'Grp3'``,2)),  ` `                        ``col2=``rep``(``letters``[1:3],2), ` `                        ``col3=``rep``(1:2,3)  ` `) ` ` `  `# creating list of dataframes ` `df<-``list``(data_frame1, data_frame2) ` ` `  `graph<-``lapply``(df, ` `              ``function``(x) ` `                ``p<-``ggplot``(x,``aes``(x= col3,y= col2,color=``factor``(col1), ` `                                ``group=``factor``(col1))) + ` `                ``geom_line``() +  ` `                ``facet_wrap``(~col1) ` `) ` `print ``(graph)`

Output

My Personal Notes arrow_drop_up
Recommended Articles
Page :