R ggplot2颜色与ifelse的关联问题
这里是我的df结构R ggplot2颜色与ifelse的关联问题,r,if-statement,ggplot2,colors,time-series,R,If Statement,Ggplot2,Colors,Time Series,这里是我的df结构 Date VAR Value 1 A 0.1 2 A 0.1 2 B1 0.2 2 B2 0.3 2 B3 0.2 3 A 0.1 4 A 0.1 5 A 0.1 5 B4 0.4 我能画出来。但我有个问题。我希望每个B只有一种颜色。我写不好,因为我有很多专栏。所以我需要grepl函数。 我试
Date VAR Value
1 A 0.1
2 A 0.1
2 B1 0.2
2 B2 0.3
2 B3 0.2
3 A 0.1
4 A 0.1
5 A 0.1
5 B4 0.4
我能画出来。但我有个问题。我希望每个B只有一种颜色。我写不好,因为我有很多专栏。所以我需要grepl函数。
我试过了。但这是错误的
print(ggplot(df, aes(date,value))
+ geom_line(aes(colour = ifelse(grepl("B", VAR) == T, "green", "blue")))
我如何处理这个问题?创建一个带有颜色的新列,并使用
缩放\u颜色\u标识
:
library(dplyr)
library(ggplot2)
df %>%
mutate(color = ifelse(grepl("B", VAR), "green", "blue")) %>%
ggplot(aes(Date, Value, color = color)) + geom_line() +
scale_color_identity()
很抱歉,它不起作用。我昨天找到了解决办法。我必须同时使用填充和颜色。打印(ggplot(df,aes(日期,值,填充=变量,颜色=颜色))+geom_线()