很多时候我们做柱状图组合折线图,或者双变量折线图,这时候需要设置双坐标轴,如果两组数据数值相差太大,会使得图的展示不合理,设置双坐标轴,各自使用各自坐标,则会对比明显。双坐标轴作图prism和original都可以实现,这里我们使用ggplot2实现。

读入数据并加载R包。

df<-read.csv("A.csv",header = T)
library(ggpubr)
library(scales)
library(ggplot2)
colnames(df)

作图。

ggplot(df, aes(y=M0_like,x=Diameter))+geom_line(color="#6FB585")+geom_point(size=3,color="#6FB585")+geom_line(aes(y=M1_like,x=Diameter), color="#E8BF80")+geom_point(aes(y=M1_like, x=Diameter),size=3,color="#E8BF80")

image.png

设置双坐标。


ggplot(df, aes(y=M0_like,x=Diameter))+geom_line(color="#6FB585")+geom_point(size=3,color="#6FB585")+geom_line(aes(y=M1_like,x=Diameter), color="#E8BF80")+geom_point(aes(y=M1_like, x=Diameter),size=3,color="#E8BF80")+scale_y_continuous(sec.axis = sec_axis(~.*1, name = 'M1_like'))+theme_bw()+theme(panel.grid.major=element_blank(),panel.grid.minor=element_blank())+theme(panel.border = element_blank())+theme(axis.line = element_line(colour = "black",size = 1))+theme_classic(base_size = 15)

image.png

虽然设置了双坐标,但是可以看出,右侧与左侧相同,黄色折线由于数值小,压的很低,看不出效果,所以需要调整。


ggplot(df, aes(y=M0_like,x=Diameter))+geom_line(color="#6FB585")+geom_point(size=3,color="#6FB585")+scale_y_continuous(expand = c(0,0),limits = c(0,6500),sec.axis = sec_axis(~./5,name = 'M1_like',breaks = seq(0,1000,200)))+geom_line(aes(y=`M1_like`*5,x=Diameter), color="#E8BF80")+geom_point(aes(y=`M1_like`*5, x=Diameter),size=3,color="#E8BF80")+theme_bw()+theme(panel.grid.major=element_blank(),panel.grid.minor=element_blank())+theme(panel.border = element_blank())+theme(axis.line = element_line(colour = "black",size = 1))+theme_classic(base_size = 15)

image.png

这样就解决问题了!但是legend要添加!

觉得小编内容有用的、有意思的,点赞、分享、关注一下呗!更多精彩内容请关注我的公众号《KS科研分享与服务》!

ggplot作图设置双坐标轴-各行其是相关推荐

  1. excel 设置双坐标轴柱状图

    思路:通过添加辅助列来调整. 步骤1 选中数据,插入柱状图,这时候会得到原始的柱状图 选中"设计"-"更改图表类型"-"组合",调整图表类型 ...

  2. 设置双坐标轴(twinx twiny)

    使用twinx是添加y轴的坐标轴 使用twiny是添加x轴的坐标轴 添加好坐标轴以后,再对新添加的坐标轴进行画图 #!/usr/bin/python #coding: utf-8import nump ...

  3. python绘图设置时间坐标轴_Matplotlib绘图双纵坐标轴设置及控制设置时间格式

    双y轴坐标轴图 今天利用matplotlib绘图,想要完成一个双坐标格式的图. fig=plt.figure(figsize=(20,15)) ax1=fig.add_subplot(111) ax1 ...

  4. python中pyecharts怎么设置坐标轴两边留白_《Python数据可视化之Matplotlib与Pyecharts》之双坐标轴图...

    10.6.1  双坐标轴图及其参数配置 双坐标轴图是一种组合图表,一般将两种不同类型图表组合在同一个"画布"上,如柱状图和折线图的组合:当然也可将类型相同而数据单位不同的图表组合在 ...

  5. R统计绘图-PCA分析及绘制双坐标轴双序图

    zhe 点击名片   关注我们 有师妹来咨询,怎样画类似于上图的双坐标轴PCA双序图.正好之前虽然PCA和RDA分析及绘图都写过教程,但是变量分析结果没有在图中显示,所以使用R统计绘图-环境因子相关性 ...

  6. matlab两个图共用一个x轴_Matlab Figures (3) —— 叠加作图与多坐标轴

    毕业季发这么一篇日志似乎不太应景~但鉴于"Matlab Tips"躺在Gmail Task队列最顶端实在是太久了,还是趁着腐败活动的间隙干掉它= =,算是纪念用error.out ...

  7. LabVIEW图表之双坐标轴

    LabVIEW中波形图.波形图表.XY图都有双坐标轴的功能,如下是通过XY实现的一组曲线显示. 实现方法: 首先建立一个波形图控件,并在Y轴的刻度上右击(一定是刻度上右击,否则不会有相应的选项)如下图 ...

  8. python的matplotlib绘图(双坐标轴)

    python的matplotlib绘图(双坐标轴) 绘制图形如下: 代码如下: import pandas as pd import matplotlib.pyplot as plt from pyl ...

  9. matlab画图双坐标轴和多坐标轴代码

    matlab的绘图模块相比于其他软件要好看很多,可以使用句柄画出很漂亮的图,下面介绍plot画单坐标轴图和双坐标轴图,另附上多坐标轴图的代码下载 一.单坐标轴图 直接使用plot(x,y)即可,x为横 ...

最新文章

  1. 机器人3D互动展品开发计划——飞拍视觉伺服
  2. 如何在计算机配置里面设置隐藏c盘,玩转电脑组策略(指定运行程序/隐藏C盘)
  3. 积木赛尔号机器人_《赛尔号大电影7》2019年暑期重磅回归 继《熊出没》之后再掀国产动画浪潮...
  4. Wannafly挑战赛29题解
  5. 第二天:装饰模式及面向对象设计原则4则
  6. 第七十二期:Visual Studio Online 终于公开上线了
  7. 你知道用git打补丁吗?
  8. 两个分布的特征映射_跨语言分布表示学习方法概述
  9. Linux下的设备管理、磁盘分区及分区类型的修改
  10. 微信小程序API之audio
  11. AC日记——潜伏者 洛谷 P1071 (模拟)
  12. BootStrap格栅系统
  13. mysql命令 -a_mysql常用命令
  14. 计算机操作系统的功能有哪些,操作系统的基本功能是什么
  15. javaweb框架和其他知识点总结
  16. android socket上传视频教程,android socket视频流方案
  17. 传统数仓如何转型大数据
  18. 【react-hook】 useCallback
  19. Firebase使用总结(早期)
  20. 【营销获客二】如何用企业微信搭建私域流量营销平台

热门文章

  1. 非门,与门,或们怎么仅用与非门构成,非门,与门,或们怎么仅用或非门非门构成
  2. 36-雷达图像基本处理
  3. mycat 分库分表
  4. 解决ul的li横向排列换行的问题
  5. Python量化投资——七行python代码生成K线图(最后有干货)
  6. 嵌入式 | 飞思卡尔MC9S12XEP100芯片CAN波特率配置
  7. SM9学习笔记与图解——第1章 整体结构
  8. 微信私域流量社群搭建sop流程步骤运营管理方案计划书表格
  9. mount 命令介绍
  10. layui省市区三级联动城市选择