动态排序ggplot构面

时间:2019-04-06 04:54:48

标签: r ggplot2

以下是推荐的从左到右动态排序构面的推荐方法:

(1)最高到最低的最近价格(因此,b> a> c个面从左到右)和

(2)最高至最低平均价格(c> b> a)?

library(lubridate)
library(ggplot2)

start_date <- ymd("2019-04-01")
end_date <- ymd("2019-04-06")

date <- rep(seq(start_date, end_date, by = "days"),3)
price <- c(1,2,3,4,5,6,2,3,4,5,6,7,8,7,6,5,4,3)
class <- c(rep("a",6), rep("b",6), rep("c",6) )
df <- data.frame(date, price, class)

ggplot(df, aes(date, price)) + facet_wrap(~class) + geom_line()

enter image description here

1 个答案:

答案 0 :(得分:1)

您是在问如何使小平面按此顺序显示吗?使构面变量成为一个因素,然后按您想要的顺序设置级别。在您的示例中:

 df$class <- factor(df$class, levels = c("b", "a", "c"))
 ggplot(df, aes(date, price)) + facet_wrap(~class) + geom_line()