使一个变量成为不同颜色的形状(ggplot2)

时间:2016-06-13 15:46:45

标签: r ggplot2

所以现在我已经得到了这个情节:

my plot

(抱歉,这不是内联图片,这是我第一次使用Stack Overflow,它不会让我发布图片)

使用以下代码生成图:

ggplot(potassium.data,             
aes(x=Experiment,y=value, 
colour=Pedigree))+geom_jitter()+labs(title=element)
问题是,这里绘制了31种不同的玉米谱系,因此难以区分颜色。我想知道是否可以制作它以使点的颜色和形状用于唯一地识别谱系,因此例如一个谱系是红色方块,另一个是红色圆圈,第三个是蓝色正方形,第四个是蓝色圆圈,依此类推。这样可以更容易区分点。有谁知道怎么做?

2 个答案:

答案 0 :(得分:1)

我不认为这是可能的,如果你通过谱系进行整形,你最终会得到与现在颜色一样多的形状类别。

geom_label()和geom_text()可以让你直接将品种id绘制到图上,然后你可以为相当于属的东西建立一个单独的列,这样品种可以按某种方式分组(也许A,B, PH等)。然后你就可以用那种颜色" genus"列,这将使情节看起来更好:

ggplot(potassium.data,             
aes(x=Experiment,y=value, label=Pedigree, colour = genus))+
geom_label(position = position_jitter())+
labs(title=element)

理想情况下,您最终会得到一个由该属着色的图,而只绘制当前在谱系中的后缀数字。

答案 1 :(得分:0)

我不得不同意Nathan和Joran的说法,因为有这么多不同点并且在混合中添加形状不太可能有帮助,因此情节非常混乱。

要回答您的问题,您应该能够使用shape =谱系,但也许为了使图表更具可读性,您可以使用geom_line将谱系从一个实验加入另一个实验,以便读者花费更少的时间进行扫描。