我正在使用 ggplot2 创建一个堆积面积图,显示一段时间内许多不同研究站的足迹(面积)。我想要如下图所示的东西,但 y 轴上有面积,并由不同的研究站着色:

(来源:r-graph-gallery.com)
我已经尝试过类似帖子的元素,但无法使其发挥作用。
R 中的 ggplot 出现问题 - “f(...) 中的错误:美学不能随功能区而变化”
https://www.r-graph-gallery.com/136-stacked-area-chart/
我在此处提供了数据的 .csv 子集。
下面是我正在使用的代码。
fp <- read.csv("fp.csv")
fp$Year <- as.numeric(rep(fp$Year)) #change Year to numeric
p2 <- fp %>%
filter(Exist == 1) %>% # Select only existing structures
group_by(Year, Station) %>%
summarise(Sum_Area = sum(Area)) %>%
arrange(desc(Year)) %>%
ggplot(aes(x = Year, y = Sum_Area, fill = Sum_Area)) +
geom_area(stat = "identity", position = "stack")
p2
Run Code Online (Sandbox Code Playgroud)
我总是收到错误消息:f(...) 中的错误:美学不能随丝带而变化
我是gnuplot的新手,我只是尝试这个,因为我需要学习它.我有三列中的值,其中第一列表示文件名(日期和时间,一小时间隔),其余两列表示两个不同的实体Prop1和Prop2.
Datetime Prop1 Prop2
20110101_0000.txt 2 5
20110101_0100.txt 2 5
20110101_0200.txt 2 5
...
20110101_2300.txt 2 5
20110201_0000.txt 2 5
20110101_0100.txt 2 5
...
20110201_2300.txt 2 5
...
Run Code Online (Sandbox Code Playgroud)
我需要按一天中的小时(**_ 0100)聚合数据,这是最后四位数字.所以,我想创建另一个名为hour的列,它告诉我当天的小时.这意味着0000 = 0h, 0100 = 1h, ...... 2200 = 22h等
然后我想得到每小时Prop1和Prop2的总和,所以最后得到类似的东西.
Hour Prop1 Prop2
0h 120 104
1h 230 160
...
10h 90 110
...
23h 100 200
Run Code Online (Sandbox Code Playgroud)
并获得Prop1和Prop2的线图.