ggplot2绘图系统——坐标轴调节

scale函数:图形遥控器。坐标轴标度函数:

scale_x_continous

scale_y_continous

scale_x_discrete

scale_y_discrete

1. 连续型变量坐标轴

函数及其参数:

scale_x_continuous(name = , #坐标轴标签
breaks = , #定义刻度
minor_breaks = ,
labels = , #刻度标签
limits = ,
expand = c(0.05,0),
#坐标轴延伸,确保图形元素不覆盖坐标
oob = censor,#识别越过边界的点
na.value = NA_real_,
trans = 'identity', #统计变换
position = 'bottom', #left/right/top
sec.axis = #定义第二坐标轴
)

统计变换参数备选:asn/atanh/boxcox/exp/identity/log/log10/log1p/log2/logit/probability/probit/reciprocal/reverse/sqrt

p1 <- ggplot(mpg,aes(displ,hwy))+geom_point()
a=p1+scale_x_continuous('L')+ #同xlab
scale_y_continuous("H") b=p1+scale_x_continuous(limits = c(0,10)) #同xlim
c=p1+scale_x_continuous(breaks = c(2,4,6),
labels = c('two','four','six'))
gridExtra::grid.arrange(a,b,c,ncol=3)

刻度标签转化为百分比

调用scales包中的percent函数。

prop <- data.frame(sex=rep(c('Male','Female'),each=5),
age=rep(c('0-14','15-34','35-49','50-64','65+'),2),
prop=c(0.12,0.37,0.23,0.17,0.11,0.09,0.33,0.28,0.21,0.09))
ggplot(prop,aes(x=age,weight=prop,fill=sex))+
geom_bar(position = 'dodge')+
scale_y_continuous(labels = scales::percent)+
ylab('Proportion')

2. 离散型坐标轴

针对离散型变量,在条形图、盒形图中使用较多。

d <- ggplot(subset(diamonds,carat>1),aes(cut,clarity))+
geom_jitter() #重定义坐标轴标签
a=d+scale_x_discrete('Cut',labels=c('Fair'='F','Good'='G','Very Good'='VG',
'Premium'='P','Ideal'="I"))
#取值范围,这里相当于取子集
b=d+scale_x_discrete(limits=c('Fair','Ideal')) grid.arrange(a,b,nrow=1)

ggplot(mpg,aes(reorder(manufacturer,displ),cty))+
geom_point()+
scale_x_discrete(labels=abbreviate)
#abbreviate函数缩写x轴标签

3. theme函数调节坐标轴

标度函数和theme调节坐标轴分工稍有不同,前者用于框架搭建,后者用于细节修饰。

theme修饰坐标轴常用参数:



应用示例。

p <- ggplot(mtcars,aes(mpg,wt))+geom_point()
p+theme(axis.title = element_text(color = 'red',size=18),
axis.line = element_line(color='blue'),
axis.text = element_text(color = 'orange',size = 12),
axis.ticks = element_line(color = 'light skyblue',size=3))

theme主题函数本身不具备生成功能。即不能生成一个坐标轴标签,只能在现有标签基础上进行修饰。

R语言与医学统计图形-【19】ggplot2坐标轴调节的更多相关文章

  1. R语言与医学统计图形-【28】ggplot2扩展包ggrepel、ggsci、gganimate、ggpubr

    ggplot2绘图系统--扩展包ggrepel.ggsci.gganimate.ggpubr等 部分扩展包可在CRAN直接下载,有些需借助devtools包从Github下载. 1. ggrepel包 ...

  2. R语言与医学统计图形【1】par函数

    张铁军,陈兴栋等 著 R语言基础绘图系统 基础绘图包之高级绘图函数--par函数 基础绘图包并非指单独某个包,而是由几个R包联合起来的一个联盟,比如graphics.grDevices等. 掌握par ...

  3. R语言与医学统计图形【6】低级绘图函数

    R语言基础绘图系统 基础绘图包之低级绘图函数--定义坐标轴.图例.文本 低级绘图函数:本身不具备图形绘制能力,只是在已有图形基础上添加元素. 函数 功能 arrows 添加箭头 axis 坐标轴 bo ...

  4. R语言与医学统计图形【8】颜色的选取

    R语言基础绘图系统 基础绘图包之低级绘图函数--内置颜色. 1.内置颜色选取 功能657种内置颜色.colors() 调色板函数:palette(), rgb(), rainbow(). palett ...

  5. R语言与医学统计图形【5】饼图、条件图

    R语言基础绘图系统 基础图形--饼图.克利夫兰点图.条件图 6.饼图 pie(rep(1,26),col=rainbow(26), labels = LETTERS[1:26], #标签 radius ...

  6. R语言与医学统计图形【4】直方图、金字塔图

    R语言基础绘图系统 基础图形--直方图.金字塔图 3.直方图 参数设置及比较. op <- par(mfrow=c(2,3)) data <- rnorm(100,10,5) hist(d ...

  7. R语言与医学统计图形【3】条形图、误差图

    R语言基础绘图系统 基础图形--条形图.误差图 3.条形图 barplot接收的数据是矩阵而非数据框. data <- sample(c(50:80),5) barplot(data,col=h ...

  8. R语言与医学统计图形【2】散点图、盒形图

    R语言基础绘图系统 基础图形--散点图.盒形图 plot是一个泛型函数(generic method),对于不同的数据绘制不同的图形. par函数的大部分参数在plot中通用. 1.散点图 plot绘 ...

  9. R语言与医学统计图形【7】低级绘图函数

    R语言基础绘图系统 基础绘图包之低级绘图函数--气泡图.一页多图.背景网格.添加线条和散点.数学表达式 4.气泡图 symbols是高级绘图函数,可在图上添加标记,标记的形状包括:circles,sq ...

随机推荐

  1. 欧姆龙PLC HostLink协议整理

    欧姆龙PLC HostLink协议整理 1.常用的存储器功能区 CIO: 输入继电器  272 点(17 CH) 0.00-16.15 输出继电器  272 点(17 CH) 100.00-116.1 ...

  2. 谈谈BEM规范(含代码)

    css规范之BEM规范 前言 引用一句经典名言在编程的世界里其中一件最难的事情就是命名,不管是设计到编程语言还是标记语言都会有命名的需求.今天聊的就是关于css的命名规范的发展过程以及演变. 命名的发 ...

  3. 为什么用于开关电源的开关管一般用MOS管而不是三极管

    区别: 1.MOS管损耗比三极管小,导通后压降理论上为0. 2.MOS管为电压驱动型,只需要给电压即可,意思是即便串入一个100K的电阻,只要电压够,MOS管还是能够导通. 3.MOS管的温度特性要比 ...

  4. Python爬虫之爬取淘女郎照片示例详解

    这篇文章主要介绍了Python爬虫之爬取淘女郎照片示例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 本篇目标 抓取淘宝MM ...

  5. 计算机网络之流量控制(停止-等待协议、滑动窗口、后退N帧协议GBN、选择重传协议SR)、滑动窗口、可靠传输机制

    文章转自:https://blog.csdn.net/weixin_43914604/article/details/104908762 学习课程:<2019王道考研计算机网络> 学习目的 ...

  6. pycharm基本使用python的注释语法

    pychram基本使用 1.主题选择 file settings Editor color Scheme 2.pycharm切换解释器 file settings Project Python Int ...

  7. 【AI测试】人工智能 (AI) 测试--开篇

    人工智能测试 什么是人工智能,人工智能是怎么测试的.可能是大家一开始最想了解的.大家看图中关于人工智能的定义.通俗点来说呢,就是 让机器实现原来只有人类才能完成的任务:比如看懂照片,听懂说话,思考等等 ...

  8. 写给初学者的Linux errno 错误码机制

    不同于Java的异常处理机制, 当你使用C更多的接触到是基于错误码的异常机制, 简单来说就是当调用的函数发生异常时, 程序不会跳转到一个统一处理异常的地方, 取而代之的是返回一个整型错误码. 可能会有 ...

  9. Spring 之 BeanFactory 源码 - 接口分析

    一.BeanFactory的基本类体系结构(接口为主):

  10. [第二章]c++学习笔记2(类和对象的基础3)

    隐藏的概念 隐藏的作用 使用例 成员函数的重载与缺省(附使用例) 注意事项