Having three dataframes like this:
library(tidyverse)
library(ggplot2)
Dataframe 1:
df1 <- structure(list(company = structure(c(3L, 5L, 1L, 2L, 4L, 3L,
5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L,
1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L,
2L, 4L), .Label = c("amazon", "bsd", "google", "so", "yahoo"), class = "factor"),
period = structure(c(2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L,
1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L,
2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L,
1L), .Label = c("after", "before"), class = "factor"), val = c(0.262776250810038,
0.187917588433778, 0.697682733346741, 0.158756228911086,
0.378985944448169, 0.249033541149918, 0.157828875332395,
0.762575137985743, 0.148767625304462, 0.394985586914259,
0.268776116734822, 0.177604969721347, 0.694811289133204,
0.160510379656321, 0.389823691090702, 0.280675292172242,
0.181169135885232, 0.655493731983643, 0.177839601349691,
0.387633795892829, 0.257949543026971, 0.169661013161717,
0.665359433308753, 0.149795535295301, 0.384002592120846,
0.244474983799245, 0.162231011597506, 0.650253625617304,
0.147493910750598, 0.424582690889589, 0.291490692945409,
0.241190141002436, 0.622555920538089, 0.215134857321624,
0.383108757346205, 0.25750262563965, 0.230989251636835, 0.708699246944202,
0.193749860338316, 0.427264195213515)), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -40L))
Second:
df2 <- structure(list(company = structure(c(3L, 5L, 1L, 2L, 4L, 3L,
5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L,
1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L,
2L, 4L), .Label = c("amazon", "bsd", "google", "so", "yahoo"), class = "factor"),
period = structure(c(2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L,
1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L,
2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L,
1L), .Label = c("after", "before"), class = "factor"), val = c(0.262776250810038,
0.187917588433778, 0.697682733346741, 0.158756228911086,
0.378985944448169, 0.249033541149918, 0.157828875332395,
0.762575137985743, 0.148767625304462, 0.394985586914259,
0.268776116734822, 0.177604969721347, 0.694811289133204,
0.160510379656321, 0.389823691090702, 0.280675292172242,
0.181169135885232, 0.655493731983643, 0.177839601349691,
0.387633795892829, 0.257949543026971, 0.169661013161717,
0.665359433308753, 0.149795535295301, 0.384002592120846,
0.244474983799245, 0.162231011597506, 0.650253625617304,
0.147493910750598, 0.424582690889589, 0.291490692945409,
0.241190141002436, 0.622555920538089, 0.215134857321624,
0.383108757346205, 0.25750262563965, 0.230989251636835, 0.708699246944202,
0.193749860338316, 0.427264195213515)), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -40L))
Third:
df3 <- structure(list(company = structure(c(3L, 5L, 1L, 2L, 4L, 3L,
5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L,
1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L, 2L, 4L, 3L, 5L, 1L,
2L, 4L), .Label = c("amazon", "bsd", "google", "so", "yahoo"), class = "factor"),
period = structure(c(2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L,
1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L,
2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L,
1L), .Label = c("after", "before"), class = "factor"), val = c(0.262776250810038,
0.187917588433778, 0.697682733346741, 0.158756228911086,
0.378985944448169, 0.249033541149918, 0.157828875332395,
0.762575137985743, 0.148767625304462, 0.394985586914259,
0.268776116734822, 0.177604969721347, 0.694811289133204,
0.160510379656321, 0.389823691090702, 0.280675292172242,
0.181169135885232, 0.655493731983643, 0.177839601349691,
0.387633795892829, 0.257949543026971, 0.169661013161717,
0.665359433308753, 0.149795535295301, 0.384002592120846,
0.244474983799245, 0.162231011597506, 0.650253625617304,
0.147493910750598, 0.424582690889589, 0.291490692945409,
0.241190141002436, 0.622555920538089, 0.215134857321624,
0.383108757346205, 0.25750262563965, 0.230989251636835, 0.708699246944202,
0.193749860338316, 0.427264195213515)), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -40L))
We can create a density plot for every data frame using this:
df_long %>%
ggplot(aes(x = val, color = company, linetype = period)) +
geom_density() +
theme_bw()
How is it possible to create three plots into one using the three different dataframe the one to be down from the other and have titles like Grey for df1 plot Temperature for df2 plot and Time for df3 plot?