R语言绘制双坐标轴的方法初探

640?wx_fmt=gif

点击上方蓝色字体,关注我们

640?wx_fmt=gif 作者简介

作者:吴健 中国科学院大学 R语言、统计学爱好者,尤其擅长R语言和Arcgis在生态领域的应用分享

个人公众号:统计与编程语言 


在数据可视化过程中,我们经常会将两种不同类型图表组合在同一个“画布”上,这就是大家所谓的双坐标轴组合图。近期有小伙伴问我怎么基于R语言绘制双坐标轴,因此小编整理了两种绘制双坐标图的方法供大家参考。

1.基于plotrix包的twoord.plot函数

加载程序包

library(plotrix)

构造示例数据集

Date <- seq(from=as.Date(‘2015-01-01’), to=as.Date(‘2015-12-01’), by=’month’)
Consumers <- c(100,80,120,153,200,188,220,322,300,321,282,304)
Amount <- c(1000,840,1458,1844,2045,2000,2548,5081,5000,5200,4800,4971)
df1 <- data.frame(Date=Date, Consumers=Consumers,Amount=Amount)

基于twoord.plot绘制双坐标图(两个条形图)


twoord.plot(lx=df1$Date, ly=df1$Consumers,rx=df1$Date,ry=df1$Amount,
 main=’双轴的两条线图’,xlab=’月份’, ylab=’会员人数’, rylab=’总消费额’, type=c(‘line’,’line’))

640?wx_fmt=png

基于twoord.plot绘制双坐标图(一个条形图加线图)

twoord.plot(lx=df1Date, ly=df1Consumers,rx=df1Date,ry=df1Amount,
 main=’双轴的两条线图’,xlab=’月份’, ylab=’会员人数’, rylab=’总消费额’, lcol=’steelblue’, type=c(‘bar’,’l’),
 xtickpos=as.numeric(df1Date), xticklab=as.character(df1Date),
 rytickpos=seq(500,5000,by=1500), halfwidth=8,do.first=’plot_bg(col=\’gray\’);grid(col=\’white\’,lty=2)’)


640?wx_fmt=png

2.基于ggplot2绘制双坐标条形图

加载程序包


library(ggplot2)
library(ReadAxfBOM)

构造示例数据集

obs <- ReadAxfBOM(“http://www.bom.gov.au/fwo/IDV60901/IDV60901.94866.axf“)
head(obs)

基于ggplot2绘制双坐标图


p <- ggplot(obs, aes(x = Timestamp))
p <- p + geom_line(aes(y=air_temp, colour = “Tempeture”))
p <- p + geom_line(aes(y=rel_hum/5, colour = “Humidity”))
p <- p + scale_y_continuous(sec.axis = sec_axis(~.*5, name = “Relative humidity [%]”))
p <- p + scale_colour_manual(values = c(“blue”, “red”))
p <- p + labs(y = “Air temperature [°C]”,x = “Date and time”,colour = “Parameter”)
p <- p + theme(legend.position = c(0.8, 0.9))
p

640?wx_fmt=png



往期回顾:

R语言绘制流程图(一)

R语言绘制流程图(二)


大家都在看

2017年R语言发展报告(国内)

精心整理 | R语言中文社区历史文章合集(作者篇)

精心整理 | R语言中文社区历史文章整理(类型篇)

640?wx_fmt=jpeg

公众号后台回复关键字即可学习

回复 爬虫            爬虫三大案例实战  
回复 
Python       1小时破冰入门

回复 数据挖掘     R语言入门及数据挖掘
回复 
人工智能     三个月入门人工智能
回复 数据分析师  数据分析师成长之路 
回复 机器学习      机器学习的商业应用
回复 数据科学      数据科学实战
回复 常用算法      常用数据挖掘算法

  • 3
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值