ggplot2:每个方面单独的色标

ian*_*ian 17 r ggplot2

直觉我正在寻找类似的东西: facet_(scales="free_color")

我做的事情

p <- ggplot(mpg, aes(year, displ, color=model)) + facet_wrap(~manufacturer)
p + geom_jitter()
Run Code Online (Sandbox Code Playgroud)

即:绘制来自model属于不同物种的个体()的2d测量值(manufacturer)由物种刻面,通过颜色指示个体.问题是所有人都拥有相同的颜色范围 - 因此刻面中的点具有非常相似的颜色.

使用geom_line的群体美学可以解决问题,但是线条讲述的不同于点.

另一个明显的解决方案是删除刻面并为每个子集绘制单独的绘图.(如果这应该是唯一的解决方案:是否有任何快速,智能或经过验证的方法可以做到这一点?)

Bra*_*sen 5

当你用一个因素着色时,我不确定这是一个可用的选项.但是,生成单个图的快速方法是这样的:

d_ply(mpg, .(manufacturer), function(df) {
jpeg(paste(df$manufacturer[[1]], ".jpeg", sep=""))
plots <- ggplot(df, aes(year, displ, color=factor(model))) + geom_jitter()
print(plots)
dev.off()
})
Run Code Online (Sandbox Code Playgroud)

相关答案: facetted ggplot的不同图例和填充颜色?


Ale*_*own 5

我想你只是想按类别着色,每个制造商生产几种型号,每个类别只有一两个:

p <- ggplot(mpg, aes(year, displ, color=class)) + facet_wrap(~ manufacturer)
p + geom_jitter()
Run Code Online (Sandbox Code Playgroud)

替代文字

  • `mpg` 数据集只是一个例子。我想绘制每个物种(`facet`)的树(`color`或`group`)样本的密度梯度(`x` vs `y`)。每棵树都只属于一个物种。 (3认同)