R 删除和编辑双图例文本ggplot2
我有以下数据:R 删除和编辑双图例文本ggplot2,r,ggplot2,R,Ggplot2,我有以下数据: metric_list <- c(0.6, 0.2, 0.1, 0.05) terms_used = c("a", "b", "c", "d") metric_listggplot2在数据采用长格式而非宽格式时效果最佳。(参见Tidy Data或ggplot2的创建者哈德利·威克姆的著作。)因此,与其: > df x terms_used metric_list cumulative 1 1 a 60 60 2
metric_list <- c(0.6, 0.2, 0.1, 0.05)
terms_used = c("a", "b", "c", "d")
metric_listggplot2在数据采用长格式而非宽格式时效果最佳。(参见Tidy Data或ggplot2的创建者哈德利·威克姆的著作。)因此,与其:
> df
x terms_used metric_list cumulative
1 1 a 60 60
2 2 b 20 80
3 3 c 10 90
4 4 d 5 95
你应该使用
> DF
x terms_used var_name val
1 1 a ERR 60
2 2 b ERR 20
3 3 c ERR 10
4 4 d ERR 5
5 1 ESR 60
6 2 ESR 80
7 3 ESR 90
8 4 ESR 95
tidyr
包可用于重塑数据:
library(tidyr) # for gather
library(plyr) # for revalue
# Reshape from wide to long
DF <- gather(df, var_name, val, c(metric_list, cumulative))
# change levels of factor (e.g. metric_list to ERR)
DF$var_name <- revalue(DF$var_name,
c("metric_list"="ERR", "cumulative"="ESR"))
library(tidyr)#用于收集
图书馆(plyr)#重新估价
#由宽变长
当数据采用长格式而不是宽格式时,DFggplot2效果最佳。(参见Tidy Data或ggplot2的创建者哈德利·威克姆的著作。)因此,与其:
> df
x terms_used metric_list cumulative
1 1 a 60 60
2 2 b 20 80
3 3 c 10 90
4 4 d 5 95
你应该使用
> DF
x terms_used var_name val
1 1 a ERR 60
2 2 b ERR 20
3 3 c ERR 10
4 4 d ERR 5
5 1 ESR 60
6 2 ESR 80
7 3 ESR 90
8 4 ESR 95
tidyr
包可用于重塑数据:
library(tidyr) # for gather
library(plyr) # for revalue
# Reshape from wide to long
DF <- gather(df, var_name, val, c(metric_list, cumulative))
# change levels of factor (e.g. metric_list to ERR)
DF$var_name <- revalue(DF$var_name,
c("metric_list"="ERR", "cumulative"="ESR"))
library(tidyr)#用于收集
图书馆(plyr)#重新估价
#由宽变长
DF非常感谢您的时间和帮助!!很好的解释。在使用ggplot时,我忘记了这个“良好实践”。另外,谢谢你分享的链接。非常感谢你的时间和帮助!!很好的解释。在使用ggplot时,我忘记了这个“良好实践”。另外,谢谢你分享的链接。