查看: 7093|回复: 60

[R语言] R语言ggplot2画图教程之——火山图

  [复制链接]
  • TA的每日心情

    2016.5.20 11:23
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    版主

    Rank: 10Rank: 10Rank: 10

    主题
    5
    奥币
    1675
    积分
    369
    注册时间
    2015.12.21
    在线时间
    58 小时

    突出贡献论坛元老


    发表于 2016.1.15 14:22:32 | 显示全部楼层 |阅读模式
    # 需要安装的包:ggplot2
    install.packages("ggplot2")
    # 导入包
    # 帮助文档链接:http://docs.ggplot2.org/current/
    library(ggplot2)
    # 改变工作路径,将工作路径改变到数据存放的文件夹下
    # 火山图
    # 读取数据:R0-vs-R3.isoforms.filter.tsv
    data =read.table("R0-vs-R3.isoforms.filter.tsv",header=T,row.names=1)
    # 画图
    r03 = ggplot(data,aes(log2FC,-1*log10(FDR)))
    r03 + geom_point()
    # 如何改变点的颜色
    r03 + geom_point(color="red")
    r03 +geom_point(aes(color="red"))
    r03 + geom_point(aes(color=significant))
    # 设置坐标轴范围和标题
    # xlim()ylim()函数,labs(title=..,x=..,y=..)函数
    r03xy = r03 +geom_point(aes(color=significant)) + xlim(-4,4) + ylim(0,30)
    r03xy + labs(title="Volcanoplot",x="log2(FC)")
    r03xy + labs(title="Volcanoplot",x=expression(log[2](FC)), y=expression(-log[10](FDR)))
    # 自定义颜色
    r03xyp = r03xy + labs(title="Volcanoplot",x=expression(log[2](FC)), y=expression(-log[10](FDR)))
    r03xyp + scale_color_manual(values =c("green","black", "red"))
    volcano = r03xyp +scale_color_manual(values = c("#00ba38","#619cff","#f8766d"))
    # 添加阈值线
    volcano+geom_hline(yintercept=1.3)+geom_vline(xintercept=c(-1,1))
    volcano+geom_hline(yintercept=1.3,linetype=4)+geom_vline(xintercept=c(-1,1),linetype=4)

    # 保存图片
    ggsave("volcano.png")
    ggsave("volcano8.png",volcano,width=8,height=8)

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x

    评分

    参与人数 1奥币 +10 收起 理由
    Miss甄 + 10 楼主码字辛苦

    查看全部评分

    回复

    使用道具 举报

  • TA的每日心情

    2018.3.26 11:08
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]常住居民I

    帝王蝶

    Rank: 4

    主题
    14
    奥币
    988
    积分
    256
    注册时间
    2015.11.12
    在线时间
    26 小时

    发表于 2016.1.15 17:40:19 | 显示全部楼层
    给楼主点个赞
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2016.11.11 15:35
  • 签到天数: 217 天

    连续签到: 4 天

    [LV.7]常住居民III

    钵水母

    Rank: 3Rank: 3

    主题
    0
    奥币
    1237
    积分
    140
    注册时间
    2016.1.10
    在线时间
    55 小时

    发表于 2016.1.16 21:26:15 | 显示全部楼层
    点赞!
    回复

    使用道具 举报

  • TA的每日心情

    2016.5.13 22:32
  • 签到天数: 17 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    帝王蝶

    Rank: 4

    主题
    7
    奥币
    1221
    积分
    214
    注册时间
    2015.12.29
    在线时间
    24 小时

    突出贡献论坛元老


    发表于 2016.1.16 21:37:29 | 显示全部楼层
    太漂亮了,请问箱图的代码是什么呢?那个分享的我做了不对
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    好棒
    2018.9.13 22:36
  • 签到天数: 204 天

    连续签到: 1 天

    [LV.7]常住居民III

    管理员

    Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

    主题
    122
    奥币
    7691
    积分
    2921
    注册时间
    2015.11.12
    在线时间
    657 小时

    推广达人宣传达人论坛元老


    发表于 2016.1.16 23:54:58 | 显示全部楼层
    taojun7054602 发表于 2016.1.16 21:37
    太漂亮了,请问箱图的代码是什么呢?那个分享的我做了不对

    具体是哪里不对可以说具体点嘛亲
    事在人为~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    吃饭
    2018.7.13 11:43
  • 签到天数: 42 天

    连续签到: 1 天

    [LV.5]常住居民I

    帝王蝶

    Rank: 4

    主题
    1
    奥币
    661
    积分
    279
    注册时间
    2015.12.29
    在线时间
    20 小时

    发表于 2016.1.19 16:25:35 | 显示全部楼层
    ,太好了,谢谢楼主!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    吃饭
    1 小时前
  • 签到天数: 322 天

    连续签到: 7 天

    [LV.8]以坛为家I

    帝王蝶

    Rank: 4

    主题
    0
    奥币
    1581
    积分
    254
    注册时间
    2016.1.13
    在线时间
    79 小时

    发表于 2016.1.19 16:31:51 | 显示全部楼层
    漂亮
    回复

    使用道具 举报

  • TA的每日心情
    吃饭
    1 小时前
  • 签到天数: 322 天

    连续签到: 7 天

    [LV.8]以坛为家I

    帝王蝶

    Rank: 4

    主题
    0
    奥币
    1581
    积分
    254
    注册时间
    2016.1.13
    在线时间
    79 小时

    发表于 2016.1.19 16:37:49 | 显示全部楼层
    不错
    回复

    使用道具 举报

  • TA的每日心情
    吃饭
    2018.7.13 11:43
  • 签到天数: 42 天

    连续签到: 1 天

    [LV.5]常住居民I

    帝王蝶

    Rank: 4

    主题
    1
    奥币
    661
    积分
    279
    注册时间
    2015.12.29
    在线时间
    20 小时

    发表于 2016.1.19 16:41:36 | 显示全部楼层
    帮助文档链接,不是在网页直接输入的吗?我把网址输入,打不开。

    点评

    是网页,应该可以打开,你再试试。  发表于 2016.1.19 16:55
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    吃饭
    2018.7.13 11:43
  • 签到天数: 42 天

    连续签到: 1 天

    [LV.5]常住居民I

    帝王蝶

    Rank: 4

    主题
    1
    奥币
    661
    积分
    279
    注册时间
    2015.12.29
    在线时间
    20 小时

    发表于 2016.1.19 16:57:46 | 显示全部楼层
    好吧,谢谢周老师,你能再给我回答一下,怎么改变工作路径吗?那天看完你录的视频,没记下来。想用你的传的数据,试一下这个火山图,结果没法读取数据。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017.5.13 14:16
  • 签到天数: 28 天

    连续签到: 5 天

    [LV.4]偶尔看看III

    钵水母

    Rank: 3Rank: 3

    主题
    3
    奥币
    819
    积分
    92
    注册时间
    2016.1.8
    在线时间
    26 小时

    发表于 2016.1.19 17:30:21 | 显示全部楼层
    请教一下,数据里面的FC,用的是R3/R0还是R3-R0计算的呢,两种计算方法有区别吗?谢谢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2016.5.20 11:23
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    版主

    Rank: 10Rank: 10Rank: 10

    主题
    5
    奥币
    1675
    积分
    369
    注册时间
    2015.12.21
    在线时间
    58 小时

    突出贡献论坛元老


     楼主| 发表于 2016.1.19 17:46:14 | 显示全部楼层
    qh2012 发表于 2016.1.19 17:30
    请教一下,数据里面的FC,用的是R3/R0还是R3-R0计算的呢,两种计算方法有区别吗?谢谢 ...

    FC = Fold Change, 算的是倍数变化,所以是R3/R0
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    yes!
    2018.9.15 21:40
  • 签到天数: 96 天

    连续签到: 3 天

    [LV.6]常住居民II

    钵水母

    Rank: 3Rank: 3

    主题
    7
    奥币
    1036
    积分
    166
    注册时间
    2015.12.29
    在线时间
    50 小时

    发表于 2016.1.29 15:50:41 | 显示全部楼层
    太赞了  大顶
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    钵水母

    Rank: 3Rank: 3

    主题
    2
    奥币
    430
    积分
    62
    注册时间
    2016.1.8
    在线时间
    14 小时

    发表于 2016.2.21 09:58:08 | 显示全部楼层
    您好,可以帮忙看看什么原因吗。运行到设置坐标轴时出现,
    > r03 + geom_point(aes(color=significant))
    > r03xy = r03 +geom_point(aes(color=significant)) + xlim(-4,4) + ylim(0,30)
    > r03xy + labs(title="Volcanoplot",x="log2(FC)")
    Warning message:
    Removed 6353 rows containing missing values (geom_point).
    > r03xy + labs(title="Volcanoplot",x=expression(log[2](FC)), y=expression(-log[10](FDR)))
    Warning message:
    Removed 6353 rows containing missing values (geom_point).
    >
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2016.5.20 11:23
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    版主

    Rank: 10Rank: 10Rank: 10

    主题
    5
    奥币
    1675
    积分
    369
    注册时间
    2015.12.21
    在线时间
    58 小时

    突出贡献论坛元老


     楼主| 发表于 2016.2.23 09:12:01 | 显示全部楼层
    yukaifan 发表于 2016.2.21 09:58
    您好,可以帮忙看看什么原因吗。运行到设置坐标轴时出现,
    > r03 + geom_point(aes(color=significant))
    >  ...

    首先这个只是个warning,并不会影响程序执行。

    warning的内容就会告诉你,在你设置了坐标轴范围之后,会有多少点被过滤掉(即不在你设置的坐标范围之内)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    钵水母

    Rank: 3Rank: 3

    主题
    2
    奥币
    430
    积分
    62
    注册时间
    2016.1.8
    在线时间
    14 小时

    发表于 2016.2.27 15:41:22 | 显示全部楼层
    生物信息学 发表于 2016.2.23 09:12
    首先这个只是个warning,并不会影响程序执行。

    warning的内容就会告诉你,在你设置了坐标轴范围之后,会 ...

    哦,谢谢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    yes!
    2018.9.15 21:40
  • 签到天数: 96 天

    连续签到: 3 天

    [LV.6]常住居民II

    钵水母

    Rank: 3Rank: 3

    主题
    7
    奥币
    1036
    积分
    166
    注册时间
    2015.12.29
    在线时间
    50 小时

    发表于 2016.3.17 15:50:37 | 显示全部楼层
    大赞,输入data的格式只能是tsv的么?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2016.5.20 11:23
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    版主

    Rank: 10Rank: 10Rank: 10

    主题
    5
    奥币
    1675
    积分
    369
    注册时间
    2015.12.21
    在线时间
    58 小时

    突出贡献论坛元老


     楼主| 发表于 2016.4.12 11:31:31 | 显示全部楼层
    xk995 发表于 2016.3.17 15:50
    大赞,输入data的格式只能是tsv的么?

    tsv是一种用来表示纯文本的表格文件的后缀,其中你叫其他的名字也可以,只要内容符合要求即可。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017.4.30 10:09
  • 签到天数: 188 天

    连续签到: 1 天

    [LV.7]常住居民III

    中华鲟

    Rank: 5Rank: 5

    主题
    7
    奥币
    1381
    积分
    623
    注册时间
    2016.1.21
    在线时间
    94 小时

    发表于 2016.4.13 10:02:41 | 显示全部楼层
    生物信息学 发表于 2016.4.12 11:31
    tsv是一种用来表示纯文本的表格文件的后缀,其中你叫其他的名字也可以,只要内容符合要求即可。 ...

    制表分隔符的txt也行呗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2016.5.20 11:23
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    版主

    Rank: 10Rank: 10Rank: 10

    主题
    5
    奥币
    1675
    积分
    369
    注册时间
    2015.12.21
    在线时间
    58 小时

    突出贡献论坛元老


     楼主| 发表于 2016.4.13 11:10:18 | 显示全部楼层
    dabaouc 发表于 2016.4.13 10:02
    制表分隔符的txt也行呗?

    是的,其实是一种格式
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表