微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何通过点类型区分 geom_point 图中的组

如何解决如何通过点类型区分 geom_point 图中的组

我有一个数据框,它有两种不同的样本类型(A 和 B)。我想通过使用不同的 shape 选项来区分这些。这是一个数据框和我目前执行此操作的尝试。

dput(head(df))的输出

structure(list(Mean.Count = c(30404.8407153174,15689.4221807262,30404.8407153174,15689.4221807262),Log2FC = c(-0.00357013689574257,-0.00417251481039714,0.306809506669248,0.224653107007472),Adj.P.Value = c(0.988865360408676,0.981816989495127,0.00202882891738576,2.72576774009609e-05),TimeKD = c("A","A","B","B"),Gene = c("HSPA5","MYH9","HSPA5","MYH9")),row.names = c("HSPA5","HSPA51","MYH91"),class = "data.frame")

当前尝试

ggplot(df,aes(x = Gene,y = Log2FC,group=TimeKD)) + 
  geom_point(aes(color = -Adj.P.Value,size = Mean.Count),alpha = 0.5)+
  coord_flip() +
  scale_colour_gradientn(
    colours = Grdevices::colorRampPalette(c("black","cyan","violet"))(n = 200),values = NULL,space = "Lab",na.value = "grey50",guide = "colourbar",aesthetics = "colour"
  )

enter image description here

目前 A 和 B 样本都是圆形。我可以使用 ggplot2 将其中一个更改为另一种形状吗?

任何帮助将不胜感激。

解决方法

您可以像这样将 shape = TimeKD 添加到 aes 调用的 geom_point...

ggplot(df,aes(x = Gene,y = Log2FC,group=TimeKD)) + 
  geom_point(aes(color = -Adj.P.Value,size = Mean.Count,shape = TimeKD),# <-- Right here! 
             alpha = 0.5)+
  coord_flip() +
  scale_colour_gradientn(
    colours = grDevices::colorRampPalette(c("black","cyan","violet"))(n = 200),values = NULL,space = "Lab",na.value = "grey50",guide = "colourbar",aesthetics = "colour"
  )

看起来像这样...

the requested graph with different shapes for the groups

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。