“ 数据可视化过程中,经常遇到两种不同类型图表组合的情况,就是所谓的双坐标轴组合图。最近学习中遇到了此问题,特学习和大家分享,部分内容有个人改进哟”

01—​效果图

02—twoord.plot用法和参数解释

---plotrix包

# 1、用法/Usage: twoord.plot(lx,ly,rx,ry,data=NULL,main="",xlim=NULL,lylim=NULL,rylim=NULL, mar=c(5,4,4,4),lcol=1,rcol=2,xlab="",lytickpos=NA,ylab="",ylab.at=NA, rytickpos=NA,rylab="",rylab.at=NA,lpch=1,rpch=2, type="b",xtickpos=NULL,xticklab=NULL,halfwidth=0.4,axislab.cex=1, do.first=NULL,xaxt="s",...)# 2、参数解释:1、lx,ly,rx,ry:左坐标轴和右坐标轴的值   注意:lx和rx值至少相邻,并且可能重叠2、data:数据框3、main:标题4、xlim、lylim,rylim:限制横坐标值、左右纵坐标值的范围5、mar:设置图形边界距,默认值为(5,4,4,4)6、lcol、rcol:左右坐标轴的颜色7、xlab:设置横坐标轴标签8、lytickpos:设置左坐标轴刻度标签的位置9、ylab:设置左坐标轴标签10、ylab.at:设置左坐标轴标签位置11、rytickpos:设置右坐标轴刻度标签的位置12、rylab:设置右坐标轴标签13、rylab.at:设置右坐标轴标签位置14、type:指定图形类型 type  "p" for points,"l" for lines,"b" for both,"c" for the lines part alone of "b",  "o" for both ‘overplotted’,"h" for ‘histogram’ like (or ‘high-density’) vertical lines,  "s" for stair steps,"S" for other steps, see ‘Details’ below,  "n" for no plotting.15、xtickpos:设置横坐标轴刻度标签位置16、xticklab:设置横坐标轴刻度标签……

详见R-gui帮助文档,代码:help(plotrix)

03—上案例

案例1:左右轴的x值包含

xval1 <- 2:10xval2 <- 1:15going_up <- seq(3,7,by=0.5)+rnorm(9)going_down <- rev(60:74)+rnorm(15)twoord.plot(lx = xval1,ly = going_up, rx = xval2, ry = going_down,xlab="Sequence",            ylab="Ascending values",rylab="Descending values",lcol=4,            main="Plot with two ordinates - points and lines",            do.first="plot_bg();grid(col=\"white\",lty=2)")

案例2:左右轴的x值重叠(一致)

xval <- seq.Date(as.Date("2017-01-01"),                  as.Date("2017-01-15"), by="day")going_up<-seq(3,7,length.out = 15)+rnorm(15)going_down<-rev(60:74)+rnorm(15)twoord.plot(xval, going_up, xval, going_down,xlab="Sequence",            ylab="Ascending values",rylab="Descending values",lcol=4,            main="Plot with two ordinates - points and lines",            xtickpos=as.numeric(xval), xticklab=as.character(xval),            do.first="plot_bg();grid(col=\"white\",lty=1)")  # 注释:xtickpos=as.numeric(xval), xticklab=as.character(xval)两个参数是控制x轴显示日期的关键,请知晓~

案例3:不带数值标签的混合类型双坐标图

## 折线&柱形混合双坐标图形(不含图形数值标签)twoord.plot(xval1, going_up, xval2, going_down, xlab="Sequence",            lylim=c(-3,8), rylim=c(50,100), type=c("l","bar"),            ylab="Ascending values", rylab="Descending values",            text = list(going_up,going_down),            lytickpos=3:7, rytickpos=seq(55,75,by=5), ylab.at=5,rylab.at=65,            main="Lines on left axis, bars on right axis(不含点数值标签)",            lcol="red", rcol=4,do.first="plot_bg(\"white\")")

案例4:带数值标签的混合类型双坐标图(值得学习)

## 折线&柱形混合双坐标图形(含图形数值标签)twoord.plot(xval1, going_up, xval2, going_down, xlab="Sequence",            lylim=c(-3,8), rylim=c(50,100), type=c("l","bar"),            ylab="Ascending values", rylab="Descending values",            text = list(going_up,going_down),            lytickpos=3:7, rytickpos=seq(55,75,by=5), ylab.at=5,rylab.at=65,            main="Lines on left axis, bars on right axis(含点数值标签)",            lcol="red", rcol=4,do.first="plot_bg(\"white\")")text(xval1, going_up,as.numeric(round(going_up)))text(xval2,     (going_down-min(c(50,100)))/(max(c(50,100))-min(c(50,100)))*(max(c(-3,8))-min(c(-3,8)))+min(c(-3,8)+0.5),     round(going_down))#注意:# 1.添加left线形图形标签可直接使用text函数,# 2.但right柱形图形标签不适合直接使用text标签,需要将右侧ry值等比例转换为ly值# 3.转换公式:(ry-min(rylim))/(max(rylim)-min(rylim))* (max(lylim)-min(lylim))+ min(lylim)+位置调整值

案例5:柱形图&概率密度混合双坐标图

xhist<-hist(rnorm(100),plot=FALSE) xdens<-dnorm(seq(-3,3,by=0.05)) twoord.plot(xhist$mids,xhist$counts,seq(-3,3,by=0.05), xdens,type=c("bar","l"),lcol=4,rcol=2,ylab="Counts", rylab="Density",main="Histogram and density curve", halfwidth=0.2,lylim=c(0,max(xhist$counts)+1),rylim=c(0,0.45),lwd=2)

04—源代码

1、更多学习twoord.stackplot

2、源数据及R代码:

链接: https://pan.baidu.com/s/1lMnHySqzwV2uxMqroINM3g

提取码: 8bks

【往期回顾推荐】

R语言快速入门

R 语言 逻辑运算:TRUE/FALSE

R语言 高阶可视化绘图系统:ggplot2入门

R语言,入门首看、必看基础概述

R语言数据管理与dplyr、tidyr

快速掌握R语言中的apply函数族 | 精选分享

R语言 分组计算,不止group_by

用R语言让你的可视化图表动起来!动起来!!附源代码

R语言 相关系数混合可视化矩阵实现

《R数据科学》是一本专门讲解tidyverse相关包的书籍,主要涉及dplyr、tidyr、ggplot2、purrr等,非常值得学习,基本上此一本书可以解答数据处理的大部分问题

R语言 双坐标轴组合图形可视化实现相关推荐

  1. R 语言 双坐标轴做法

    library(plotrix)con <- file("lesson8.txt", "r", blocking = FALSE)df <- rea ...

  2. R语言机器学习与大数据可视化暨Python文本挖掘与自然语言处理核心技术研修

    中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办[2017] 第45号 "R语言机器学习与大数据可视化"暨"Python文本挖掘与自然语言处理" ...

  3. “R语言机器学习与大数据可视化”暨“Python文本挖掘与自然语言处理”核心技术高级研修班的通知

    中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办[2017] 第45号 "R语言机器学习与大数据可视化"暨"Python文本挖掘与自然语言处理" ...

  4. R语言实现sigmoid激活函数并可视化

    R语言实现sigmoid激活函数并可视化 sigmoid激活函数又叫作 Logistic 激活函数,它将实数值压缩进 0 到 1 的区间内,还可以在预测概率的输出层中使用.该函数将大的负数转换成 0, ...

  5. R语言ggpubr包ggsummarystats函数可视化分组条形图(自定义分组颜色、添加抖动数据点jitter、误差条)并在X轴标签下方添加分组对应的统计值(样本数N、中位数、四分位数的间距iqr)

    R语言ggpubr包ggsummarystats函数可视化分组条形图(自定义分组颜色.添加抖动数据点jitter.误差条error bar)并在X轴标签下方添加分组对应的统计值(样本数N.中位数med ...

  6. R语言自定义多分类混淆矩阵可视化函数(mutlti class confusion matrix)、R语言多分类混淆矩阵可视化

    R语言自定义多分类混淆矩阵可视化函数(mutlti class confusion matrix).R语言多分类混淆矩阵可视化 目录

  7. R语言双因素方差分析

    R语言双因素方差分析 条件: 各个样本是相互独立的随机: 各个样本来自正态总体: 具有方差齐性: 用途: 检验两个或多样本均数间的差异有无统计学意义:注:本均数的比较可以采用 t检验或 F检验,两个以 ...

  8. R语言使用pdf函数将可视化图像结果保存到pdf文件中、使用pdf函数打开图像设备、使用dev.off函数关闭图像设备、自定义width参数和height参数指定图像的宽度和高度

    R语言使用pdf函数将可视化图像结果保存到pdf文件中.使用pdf函数打开图像设备.使用dev.off函数关闭图像设备.自定义width参数和height参数指定图像的宽度和高度 目录

  9. R语言求拟合函数图形的交点坐标

    R语言求拟合函数图形的交点坐标 通过二分类无限逼近的方法获得的 代码如下: 1)四个曲线的数据结构 v_ac=log(vir_1) op_log=log(opp) test1=data.frame(v ...

最新文章

  1. 通过三个直观步骤理解ROC曲线
  2. c语言case的应用,switch、case的使用
  3. go websocket 关闭_Go实战--使用之gorilla/websocket
  4. 安装VS 2008 EXPRESS出现无法读取deffactory.dat错误
  5. websocket文档_WebSocket推送 原理扫盲到上手实践
  6. 自定义ElementUI风格树形组件,详解递归组件的使用及事件数据传递,视图更新等问题
  7. Spring : ConcurrentMapCacheManager
  8. freecplus框架-文件操作
  9. linux下qt生成dll,Qt 创建和使用动态链接库 - cibiren2011的专栏 - 博客频道 - CSDN.NET...
  10. click() bind() live() delegate()区别 1
  11. javaEE插件安装
  12. android 开机自启动实现
  13. QPainter详解
  14. Python实现文件/文件夹名按字符串排序或者按数字排序
  15. 华硕linux网卡驱动,华硕官网主板型号”P5BV-C”的Linux的网卡驱动加载
  16. 昊海微信拼团php,最新微信昊海拼团系统独立版源码分享,微信团购关注送红包送优惠卷功能,附说明文档...
  17. windows10 freeswitch soundtouch 变声
  18. Python OpenCV --Drowsiness Detector 睡意检测--项目记录
  19. 科学设置百度网盟到访定向,提升竞价转化率!
  20. 深度解析Android Q cutout刘海屏

热门文章

  1. 浪漫森系婚礼场景电子相册制作教程
  2. Mysql修改数据目录(迁移到挂载盘-5.7版本)
  3. 测试wi-fi信号软件是什么,怎么检查Wi-Fi信号的强度 如何增强wifi信号强度
  4. 如何让新人尽快融入团队
  5. 简易的安卓天气app(一)——解析Json数据、数据类封装
  6. 通过css设定无背景色
  7. lazarus DLL简单应用
  8. 太骚了!还能这样获取wifi密码?Github这个开源项目火的一塌糊涂!
  9. 小米从颠覆者到追随者的巨变背后
  10. 一篇男人必看的创业文章。(人活着不能没有钱,但是活着却不能只为了钱)