我正在对不同行业公司的净销售额数据进行研究。为此,我有一个包含不同行业公司净销售额的数据集。现在,我想在一张图上创建每个行业的地块,其中1条对应于每年净销售额的总和(从2010-2020年),另一条是2010-2019年到2020年的趋势线(因此,考虑到前几年,2020年的预期净销售额)。这样,我就有了一个直观的帮助,看看2020年的数字是否有明显的下降。我已经得到了使用dplyr
进行排序的第一个图表(每个行业每年的总净销售额)如下:
library(ggplot); library(tidyverse)
Industries <- df %>%
group_by(NAICS, Year) %>%
summarize(Sales = mean(`Net Sales`))
Industry_Plot <- ggplot(data = Industries, aes(Year, Sales)) +
theme_bw() +
theme(axis.text.y = element_blank(),
axis.ticks.y = element_blank(),
panel.grid = element_blank()) +
geom_line(color = "steelblue", size = 1)
至于第二部分,我需要知道:
我在下面为一个行业提供了一个数据集的'dput()‘示例(以下是一个行业的合计净销售额(NAICS):
Industries <- structure(list(NAICS = c(315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315),
Year = c(2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020),
Sales = c(1839.94, 2227.27, 2203.9, 2421.88, 2681.7, 2789.2, 2834.07, 2944.34, 3129.65, 3213.13, 2757.85)),
row.names = c(NA, -11L),
groups = structure(list(NAICS = 315, .rows = structure(list(1:11),
ptype = integer(0),
class = c("vctrs_list_of", "vctrs_vctr", "list"))),
row.names = 1L, class = c("tbl_df", "tbl", "data.frame"), .drop = TRUE),
class = c("grouped_df", "tbl_df", "tbl", "data.frame"))
我完全不知所措。提前谢谢你帮我。
发布于 2021-05-05 11:26:14
我相信你想使用geom_smooth(方法=‘lm’.)带有子集参数,例如:
ggplot(data = Industries, aes(Year, Sales)) +
theme_bw() +
theme(axis.text.y = element_blank(),
axis.ticks.y = element_blank(),
panel.grid = element_blank()) +
geom_line(color = "steelblue", size = 1) +
geom_smooth(method='lm', formula= y~x, color='red', se=FALSE) +
geom_smooth(data=subset(Industries, Year < 2020), method='lm', formula= y~x, color='green', se=FALSE)
https://stackoverflow.com/questions/67400117
复制相似问题