使用ggplot2在R上创建地平线图:显示百分比变化

使用ggplot2在R上创建地平线图:显示百分比变化,r,ggplot2,visualization,R,Ggplot2,Visualization,我是这方面的初学者,对此我真的很迷茫 我想使用ggplot2和R创建一个地平线图,显示不同城镇的销售额百分比变化。有谁能指导我创建该图表的方法吗 我得到的数据是这样的。 这是我想做的图表类型。 (来源:) 提前感谢您提供的任何帮助 编辑:以下是数据的示例代码: x <- data.frame( "town" =c('sad','sad','sad','sad','happy','happy','happy','happy'), "month"=c("2017-01","2017

我是这方面的初学者,对此我真的很迷茫

我想使用ggplot2和R创建一个地平线图,显示不同城镇的销售额百分比变化。有谁能指导我创建该图表的方法吗

我得到的数据是这样的。

这是我想做的图表类型。 (来源:)

提前感谢您提供的任何帮助

编辑:以下是数据的示例代码:

x <- data.frame(
  "town" =c('sad','sad','sad','sad','happy','happy','happy','happy'),
  "month"=c("2017-01","2017-02","2017-03","2017-04","2017-01","2017-02","2017-03","2017-04"),
  "median_sales" = c(336500,355000,375000,395000,359000,361500,36000,375000),
  "percentage_change" = c(NA,5.4977712,5.6338028,5.3333333,NA,0.6963788,-0.4149378,  4.1666667
))

x <-
  x %>%
  mutate(month = floor_date(as_date(as.yearmon(month)), "month"))

x最好给出一个能够产生合理绘图的示例,并将示例数据作为数据而不是图像提供

如果你在谷歌上搜索“地平线图”,第一个答案应该会给出你所需要的

以下是一个基于您提供的数据的简单示例:

library(latticeExtra)

sales.ts <- ts(matrix(sales$median_sales, ncol=2), names = c("sad", "happy"),
               start = c(2017, 1), frequency = 365)

horizonplot(sales.ts)
库(latticeExtra)

嘿,彼得!非常感谢你的回复。我不知道如何附加数据集,但您可以在此处访问真实的数据集:再次感谢!您似乎还没有充分考虑您的问题,因为您向我介绍的数据包含每月和每个城镇的多个条目。是否要对每个月镇上所有单元的所有转售价值求和?让你的示例从网站下载数据,或者只是将一些有代表性的数据粘贴到你的代码示例中。嗨,peter,再次感谢你的回复。我用示例代码编辑了这个问题。请让我知道这是否会有帮助!
x.ts <- ts(matrix(x$median_sales, ncol=2), names = c("sad", "happy"),
                  start = c(2015, 1), frequency = 12)

horizonplot(x.ts)