创建每年多条线的折线图

问题描述 投票:0回答:1

我想创建一个每个

acquiYear
有多条线的折线图,其中 x 轴应代表
month
,y 轴代表
nrOrders

我的数据表如下所示:

structure(list(delivYear = c("2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018"
), acquiYear = c("2014", "2014", "2014", "2014", "2014", "2014", 
"2014", "2014", "2014", "2014", "2014", "2014", "2015", "2015", 
"2015", "2015", "2015", "2015", "2015", "2015", "2015", "2015", 
"2015", "2015", "2016", "2016", "2016", "2016", "2016", "2016", 
"2016", "2016", "2016", "2016", "2016", "2016", "2017", "2017", 
"2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", 
"2017", "2017", "2018", "2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018"), quater = c("Q1", 
"Q1", "Q1", "Q2", "Q2", "Q2", "Q3", "Q3", "Q3", "Q4", "Q4", "Q4", 
"Q1", "Q1", "Q1", "Q2", "Q2", "Q2", "Q3", "Q3", "Q3", "Q4", "Q4", 
"Q4", "Q1", "Q1", "Q1", "Q2", "Q2", "Q2", "Q3", "Q3", "Q3", "Q4", 
"Q4", "Q4", "Q1", "Q1", "Q1", "Q2", "Q2", "Q2", "Q3", "Q3", "Q3", 
"Q4", "Q4", "Q4", "Q1", "Q1", "Q1", "Q2", "Q2", "Q2", "Q3", "Q3", 
"Q3", "Q4", "Q4", "Q4"), month = c("Jan", "Feb", "Mar", "Apr", 
"May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "Jan", 
"Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", 
"Nov", "Dec", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", 
"Aug", "Sep", "Oct", "Nov", "Dec", "Jan", "Feb", "Mar", "Apr", 
"May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "Jan", 
"Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", 
"Nov", "Dec"), nrOrders = c("0", "0", "0", "0", "0", "0", "0", 
"0", "1", "1", "2", "0", "2", "4", "5", "3", "7", "3", "5", "4", 
"3", "7", "8", "7", "2", "24", "16", "33", "9", "27", "16", "10", 
"27", "9", "31", "35", "11", "11", "25", "15", "18", "19", "19", 
"8", "27", "34", "43", "51", "0", "11", "2", "0", "0", "0", "0", 
"0", "4", "5", "1", "0"), eur = c("0", "0", "0", "0", "0", "0", 
"0", "0", "180", "8760", "17760", "0", "6730", "5354", "2840", 
"22190", "29210", "8725", "7226", "12500", "2090", "13780", "21434", 
"15719", "29000", "112366", "38148", "125900", "10285", "54281", 
"23777", "111512", "76907", "18306", "124393", "103220", "8890", 
"52082", "119095", "28482", "62841", "54356", "54119", "42999", 
"112459", "169798", "123808", "504226", "0", "55336", "3017", 
"0", "0", "0", "0", "0", "15880", "1844", "252", "0")), row.names = c(NA, 
-60L), class = c("data.table", "data.frame"))

如何创建每年多行的图表?

r ggplot2 plotly linechart ggplotly
1个回答
0
投票

x 轴为月份,y 轴为订单数。这样,您就需要在图表中为 acquiYear 的每个值单独绘制一条线。

假设您的数据位于名为 df 的变量中,您可以通过使用美学中的组选项告诉 ggplot 为 acquiYear 的每个值绘制一条单独的线:

ggplot(data = df, aes(x=month, y=nrOrders, group=acquiYear)) +
  geom_line()

为了区分它们,您可以使用颜色,例如:

ggplot(data = df, aes(x=month, y=nrOrders, group=acquiYear, color=acquiYear)) +
  geom_line()

sample output

© www.soinside.com 2019 - 2024. All rights reserved.