我正在尝试为R中GGally
库中的ggpairs
散点图使用另一个颜色调色板。请参见此处类似问题。
library(ggplot2)
library(GGally)
工作
ggplot(iris, aes(x=Sepal.Width, colour=Species)) + stat_ecdf() + scale_color_brewer(palette="Spectral")
同样适用
ggplot <- function(...) ggplot2::ggplot(...) + scale_color_brewer(palette="Spectral")
ggplot(iris, aes(x=Sepal.Width, colour=Species)) + stat_ecdf()
Does not work
ggplot <- function(...) ggplot2::ggplot(...) + scale_color_brewer(palette="Spectral")
ggpairs(iris,
columns=, c("Sepal.Length", "Sepal.Width", "Petal.Length", "Petal.Width"),
colour='Species',
lower=list(continuous='points'),
axisLabels='none',
upper=list(continuous='blank')
)
但是添加
putPlot(p, ggplot(iris, aes(x=Sepal.Length, colour=Species)) + stat_ecdf(), 1,1)
添加正确颜色的绘图。
解决方法
我可以使用getPlot后更改绘图,但那不够美观...
subplot <- getPlot(a, 2, 1) # retrieve the top left chart
subplotNew <- subplot + scale_color_brewer(palette="Spectral")
a <- putPlot(a, subplotNew, 2, 1)
我该如何更改ggpairs中散点图的颜色方案?更具体地说,我想手动定义颜色,如下所示:
scale_colour_manual(values=c("#FF0000","#000000", "#0000FF","#00FF00"))
谢谢!
ggpairs
图存储在一个对象中,比如说gg
,然后修改gg$plots
。 - Stéphane Laurent