【发布时间】:2025-11-30 03:55:02
【问题描述】:
我有一个包含 3 列的数据框,我正在尝试按分类列年份绘制车祸与损失,其中每年将被分配不同的颜色阴影。我希望颜色是从最浅到最深的颜色阴影。例如,数据框中的最小年份是 1946 年,最大年份是 2003 年,因此 1946 年应该是分配颜色的最浅色度,而 2003 年应该是最暗度。我可以按年为情节着色,但我观察到每隔几年分配给相同的一组颜色。我希望年度进展在视觉上可以区分。以下是最小的可重现数据框和我迄今为止的尝试。
# creating dataframe
year <- data.frame(year = seq(1946,2003,1))
crashes <- data.frame(crashes = c(386,317,294,287,266,245,268,296,226,265,243,239,183,212,195,224,170,169,140, 147,111,119,100,115,128,111,80,77,68,69,84,72,90,82,59,67,45,59,50,64,55,63,56,56,57,68,34,32,26,21,20,30,35,28 ,22,27,34,NA))
losses <- data.frame(losses = c(432,423,341,291,282,288,387,323,229,305,244,333,200,215,211,245,197,177,153,152, 115,189,124,129,133,120,91,90,69,78,88,77,95,98,62,70,45,62,70,68,65,73,90,65,61,74,39,33,31,22,21,39,35,58,25,36 ,40,NA))
df <- cbind(year,crashes,losses)
# plotting
plot(df$crashes, df$losses, main = "Sum of Car Crashes and the Total sum of Losses per Year",xlab = "Car Crashes", ylab = "Losses", col = df$year)
legend(x = 401,y = 510, legend = df$year,cex=.3, fill = df$year, xpd=TRUE)
【问题讨论】: