专栏首页生信了R语言作图——Dot plot(点图)

R语言作图——Dot plot(点图)

原创:黄小仙

2020开年不凡, 生活果然充满了惊吓,可仍然要期待惊喜呀。今天要给大家介绍的是点图(Dot plot),点图展示的数据比较简单,但胜在好看啊。

作图数据如下:

(数据框中的第一列行名在本次作图中暂时用不到) Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式。

Step2. 绘图数据的读取

data<-read.csv(“your file path”, header = T)
#注释:header=T表示数据中的第一行是列名,如果没有列名就用header=F

Step3.绘图所需package的安装、调用

library(reshape2)
library(ggplot2) 
library(Hmisc)                       
#注释:package使用之前需要调用
# 今天要用到stat_summary()函数需要调用Hmisc包

Step4.绘图

data_melt<-melt (data[,-1])
#注释:melt()函数把表格中的宽数据变成长数据
# data[,-1]去掉作图用不到的第一列数据
p<-ggplot(data_melt, aes(x = variable, y = value, color=variable, fill= variable)) + 
   geom_dotplot(binaxis='y', stackdir='center', binwidth = 1)+
   theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.border = element_rect(colour="black",fill=NA))
p

添加平均值

p + stat_summary(fun.y = "mean", geom = "crossbar", 
            mapping = aes(ymin = ..y.., ymax = ..y..), width = 0.3)

添加误差线

p + stat_summary(fun.y = "mean", geom = "crossbar",
     mapping = aes(ymin = ..y.., ymax = ..y..), width = 0.3) +
     stat_summary(fun.data = "mean_se", geom="errorbar", width = 0.2)

本文分享自微信公众号 - 生信了(gh_ed36a29a9a9d),作者:黄Xiao仙

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-02-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • R语言作图——bar chart

    前言:最近由于本公众号的管理者hxj身体抱恙,产出减少,还请一起学习的朋友们见谅。现在由黄小仙代为管理,由于缺乏编辑经验,排版不够优美,请朋友们多多包涵。很感谢...

    一只羊
  • R语言作图——Violin plot with dot

    小提琴图之前已经画过了,不过最近小仙又看到一种貌美的画法,决定复刻一下。 文献中看到的图如下:

    一只羊
  • R语言作图——Pie chart

    今天要给大家介绍的Pie chart(饼图),本来是不打算写这个的,因为用Excel画饼图实在是太方便了。本着能少动一下是一下的懒人原则,是不打算用R画的,再说...

    一只羊
  • 渗透测试该如何全面检测网站漏洞

    昨天给大家普及到了渗透测试中执行命令漏洞的检测方法,今天抽出时间由我们Sine安全的渗透工程师来讲下遇到文件包含漏洞以及模板注入漏洞的检测方法和防御手段,本文仅...

    技术分享达人
  • 渗透测试该如何全面检测网站漏洞

    昨天给大家普及到了渗透测试中执行命令漏洞的检测方法,今天抽出时间由我们Sine安全的渗透工程师来讲下遇到文件包含漏洞以及模板注入漏洞的检测方法和防御手段,本文仅...

    网站安全专家
  • 如何改变APP命若昙花?只有实现万物互联

    《捕鱼达人》、《疯狂猜图》、《脸萌》、《小偶》……这些曾经火爆过的App(移动应用)如今还有多少在你的手机上存在?即使依旧存在,你又是否还会去打开它? 最近,一...

    人称T客
  • Svelte 3 快速开发指南(对比React与vue)[每日前端夜话0x83]

    Svelte 3 Tutorial For The Impatient Developer (2019)

    疯狂的技术宅
  • Django+Vue开发生鲜电商平台之10.购物车、订单管理和支付功能

    购物车需要实现在商品详情页面将该商品加入购物车后,右上角同步显示,并且点击去结算会同步显示,并且价格与数量同步,具体包括了增删改查等操作,在apps/trade...

    cutercorley
  • 基于MySQL Binlog 的 Elasticsearch 数据同步实践

    随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。

    Spark学习技巧
  • 基于 MySQL Binlog 的 Elasticsearch 数据同步实践

    随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。

    马蜂窝技术

扫码关注云+社区

领取腾讯云代金券