我正在尝试从我的数据(年份和雨量)生成折线图。这个图很好,但是我想(自动)改变每一条线的颜色。代码如下所示
ggplot(data=data_1, aes(x=Year, y=rain, fill=Year))
+ geom_line(stat="identity")
+ theme_minimal()
+ geom_col(width = 0.05, position = position_dodge(0.7))
+ xlab("Year")
+ ylab("Rain")
+ ggtitle("Rain of every Year")
我正在尝试使用scale_fill_brewer(palette="Oranges")
,但它显示错误。Error: Continuous value supplied to discrete scale
。
下面给出了不带scale_fill_brewer(palette="Oranges")
的图表
我的代码生成的RGraph:
我需要像这样画(这个图是使用Python的dewan!)
我的预期图表:
你能告诉我,我该怎么做吗?
发布于 2020-09-17 00:27:10
试试这个(由于缺乏可重现的数据,没有提供输出):
#Code
ggplot(data=data_1, aes(x=Year, y=rain, fill=factor(Year)))+
geom_line(stat="identity")+
theme_minimal()+
geom_col(width = 0.05, position = position_dodge(0.7))+
xlab("Year")+
ylab("Rain")+
ggtitle("Rain of every Year")+
guides(fill = guide_legend(ncol = 1))
发布于 2020-09-17 00:31:28
在看不到真实数据的情况下,很难说,但我会试试geom_segment
。这是用虚构的测试数据编写的代码。
set.seed(2020)
data_1 <- data.frame(Year = 1900:1950,
rain = sample(400:1000, length(1900:1950), TRUE))
ggplot(data = data_1, aes(x = Year, y = 0)) +
geom_segment(aes(xend = Year, yend = rain, color = factor(Year)),
show.legend = FALSE) +
xlab("Year") +
ylab("Rain") +
ggtitle("Rain of every Year") +
theme_minimal()
https://stackoverflow.com/questions/63924190
复制相似问题