ggplot2中显示坐标轴_qplot()——ggplot2的快速绘图

先前写过几篇用ggplot2进行基本绘图的文章,但对于初学者,或只需绘制简单图形时,这些命令显得繁琐,这里介绍ggplot2中的快速绘图函数qplot(). 此函数相对能较快速便捷地绘制图形。

往期文章:

张光耀:ggplot2数据包画图系列1(散点图)​zhuanlan.zhihu.com
d72851876da358a4b0a0af9efcdfc1ac.png
张光耀:ggplot2数据包画图系列2(条形图)​zhuanlan.zhihu.com
2786e891b22a6c1f3324a857ad632e9e.png
张光耀:ggplot2数据包画图系列3(分组条形图)​zhuanlan.zhihu.com
e528c4d2c4b6a0405a8f496071313826.png
张光耀:ggplot2数据包画图系列4(交互作用折线图)​zhuanlan.zhihu.com
8101f1ded2c2ad765f99783c3dcce75a.png

首先说一下qplot()中参数的含义:

qplot(x = , # 变量Xy = , # 变量Ydata = , # 某数据名(如果要根据某数据绘图)color = , # 定义线的颜色和方块的边界颜色fill = , # 定义方块的填充颜色shape = , # 定义几何对象的形状alpha = , # 定义透明度(范围0–1)facets = , # 定义分面margins = , # 是否显示分面后的列统计geom = , # 定义几何对象xlim = , # 定义X轴的范围ylim = , # 定义Y轴的范围log = , # 是否对X和Y进行对数转换main = , # 定义主标题xlab = , # 定义X轴标题ylab = , # 定义Y轴标题asp = , # 定义Y/X轴的比率... = )

下面我以R中自带的mtcars数据,对各参数举例演示一下。

mtcars收集了32辆不同品牌车辆的指标信息,包括重量(wt),百公里耗油量(加仑)(mpg),变速器类型(am)等。
  • simple start
qplot(x = wt, y = mpg, data = mtcars)

bd88465c522b1997d3f8e5e802ce723d.png

指定x和y后,默认绘图为散点图。

  • color
qplot(x = wt, y = mpg, data = mtcars, color = am)

a9c5e476e9545c069f9cd38f5c6ab1bb.png

这里用对不同变速器用不同的颜色来表示,但是变速器为0-1编码,默认为连续型变量,可以将其转化为因子型:

qplot(x = wt, y = mpg, data = mtcars, color = factor(am))

cd54a7d1f85f7d8145ef46532e947cd4.png

color也可以人为设置为某个颜色,但是需要注意,如果以下面的方式设置,其实是将blue当做一个变量,而不是一个颜色:

qplot(x = wt, y = mpg, data = mtcars, color = 'blue')

8bc7f730727e6f62d5a1ea0f84b5ec8f.png

要想设置为蓝色,应该用I()函数来实现:

qplot(x = wt, y = mpg, data = mtcars, color = I('blue'))

3bfe0e5c276d934a7802e9896b9bdffb.png
  • facet
qplot(x = wt, y = mpg, data = mtcars, facets = ~am) # 按照变速器分面

97e2de58db7d9e04ef8327b29f32f7cd.png
qplot(x = wt, y = mpg, data = mtcars, facets = cyl~am) # 按照气缸数和变速器分面,气缸数为行分面,变速器为列分面

69cf9f549b486f7d6bca3706e26fabfd.png
qplot(x = wt, y = mpg, data = mtcars, facets = ~am*cyl) # 按照气缸数和变速器分面,气缸数和变速器都为列分面

b226be6463ce406dd413c174bbe3697c.png
  • margins
qplot(x = wt, y = mpg, data = mtcars, facets = cyl~am,margins = T) # 对行分面进行汇总

4700947d9f0625929fa80056408600c9.png
  • geom
qplot(x = mpg, data = mtcars, geom = 'dotplot') # 点图

fa409237e0e6320d2e26371b6a1a999a.png
qplot(x = mpg, data = mtcars, geom = 'histogram')

af238efa93d0a43aa2c406908321b798.png
qplot(x = wt, y = mpg, data = mtcars,geom = 'line') # 折线

d79203f8edee5502f3584d9d4166c878.png
qplot(x = wt, y = mpg, data = mtcars,geom = 'smooth') # 拟合曲线

cdca00ac9ad981360402d47fc5327a07.png
qplot(x = wt, y = mpg, data = mtcars,geom = c('point','line')) # 散点+折线

3bb507ae520ede1a8691def13300ef64.png
  • xlim & ylim
qplot(x = wt, y = mpg, data = mtcars)
qplot(x = wt, y = mpg, data = mtcars, xlim = c(2,4), ylim = c(15,30))

bd88465c522b1997d3f8e5e802ce723d.png
坐标轴无限制

d4ec63490d3e0ffc4b51959c7307023e.png
坐标轴限制
  • log
qplot(x = wt, y = mpg, data = mtcars,log = 'x')
qplot(x = wt, y = mpg, data = mtcars,log = 'xy')

7236eb9937e9a9624029a212d356b390.png
X轴对数转化

f5ca473344d2091311167b8b5ceeb359.png
XY轴对数转化
  • main & xlab & ylab
qplot(x = wt, y = mpg, data = mtcars,main = 'Example of qplot()',xlab = 'Weight',ylab = 'Miles per gallon')

b3dc1f56a379290717979e3050eb704b.png
  • asp
qplot(x = wt, y = mpg, data = mtcars,asp = 2)

63ca4ab113416ae18fdc4721b74df6cd.png
qplot(x = wt, y = mpg, data = mtcars,asp = 1/2)

2c89e2b2c569095d19b263fce277529c.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/472138.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python清洗文本数据_02.数据预处理之清洗文本信息

准备30万条新闻数据编号新闻类别新闻数量(条)1财经370982教育419633科技655344时政630865体育655346娱乐65534yield生成器斐波那契数列介绍和数学描述斐波那契数列算法实现斐波那契数列算法生成器实现算法时间性能对比分析# codingutf-8"""Description&#xff…

学习思考 耐得寂寞 拥得繁华

要么读书,要么旅行,身体和灵魂,必须有一个在路上。 生活不可能像想象得那么好,但也不会像想象得那么糟。我觉得人的脆弱和坚强都超乎自己的想象。有时,我可能脆弱得一句话就泪流满面,有时,也发现…

python比较时间的最大值_时间戳的最大值

我在用3.6.1 |Continuum Analytics, Inc.| (default, May 11 2017, 13:09:58) \n[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]在Windows10机器上运行的Ubuntu16.04VM中。在我把你的ctime调用分解到它的各个部分,去调查,但是我没有达到同样的最大值。在>&g…

LeetCode 879. 盈利计划(动态规划)

文章目录1. 题目2. 解题1. 题目 集团里有 n 名员工,他们可以完成各种各样的工作创造利润。 第 i 种工作会产生 profit[i] 的利润,它要求 group[i] 名成员共同参与。如果成员参与了其中一项工作,就不能参与另一项工作。 工作的任何至少产生…

【Unity】对象池技术

【Unity】对象池技术 1.简介 对象池(Object Pooling)技术是一种用于优化游戏性能和内存管理的技术。 对象池可以用于各种需要频繁实例化和销毁游戏对象的场景,例如子弹、敌人、玩家等。其主要目标是减少频繁的内存分配和垃圾回收的次数&…

正则邮箱_自己写一个通用的邮箱正则表达式

今天把正则又复习了一遍,为了加深记忆,自己写一个邮箱的正则表达式咱们先来看几个合法的邮箱地址hd33322nat123.commaksim.kim.82d-link.uavova_lazarev1969jaagers.comb4-service.szhaopinmail.com通过观察上面几个例子,不难看出所有邮箱地址…

[css][移动设备]禁止横竖屏时内容自动调整

参考:http://www.kankanews.com/ICkengine/archives/106643.shtml iOS下当竖屏转向横屏的时候,发现内容字体会自动变大,通过各种方法设置字体大小都失败了。 需要在body中设置如下: text-size-adjust: none;-ms-text-size-adjust…

python gettext_python gettext使用

python中使用gettext进行语言国际化的方法1.编辑源代码, 保存为gettextdemo.pyimport gettextcatalogs gettext.find("example", localedir"locale", allTrue)print catalogs:,catalogst gettext.translation(example, "locale", fallbackTrue…

python 数字、字符串与 time时间/日期 的转换

获取当前时间戳 >>> import time >>> num time.time() # 当前时间戳, 7位浮点 >>> type(num) <class float> >>> num 1623302086.1892786数字 转 时间 >>> t time.localtime(num) # 数字 转 时间 >>> type(t…

python基础版课件_python基础课件精编版.ppt

6.10 问题解答 (1)能不能像执行.exe文件那样执行.py文件呢&#xff1f; 在Windows上是不行的&#xff0c;但是&#xff0c;在Mac和Linux上是可以的&#xff0c;方法是在.py文件的第一行加上一个特殊的注释。 (2)在实际项目中&#xff0c;条件语句用的多还是循环语句用的多&…

Convert Windows 32bit dirver to Windows 64bit

Pre-condition: 1.source code(vc6.0WDK based) Development environment: 2.VS2013 3.WDK 8/8.1 Steps: 1.Create a new project. File->New->Visual C->Windows Driver 2.Copy .c and .h source code to project 3.Modify project property xxx属性页->配置属性-…

小程序 模糊查询_[轻应用小程序]如何使用信息查询功能?

本文内容结构如下图一、查询功能是什么&#xff1f;有什么作用&#xff1f;对于企业&#xff0c;会有一些和自身业务相关的数据&#xff0c;需要给到客户提供“查询信息”或“查询缴费”服务。查询信息&#xff1a;学校、培训机构&#xff1a;查询成绩。人力招聘&#xff1a;面…

LeetCode 1887. 使数组元素相等的减少操作次数(map)

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 nums &#xff0c;你的目标是令 nums 中的所有元素相等。完成一次减少操作需要遵照下面的几个步骤&#xff1a; 找出 nums 中的 最大 值。记这个值为 largest 并取其下标 i &#xff08;下标从 0 开始计数&#xff09;。如果…

input和output哪个是充电_input是什么接口?告诉大家这个小常识,以后音箱接线更容易...

很多网友都遇到过这样的问题&#xff0c;在电视、电脑、音箱、功放等设备的后面&#xff0c;经常会有很多接口&#xff0c;其中有的接口旁边写着“input”&#xff0c;那么input到底是什么接口呢 &#xff0c;今天就和大家聊聊这个问题。在字面意思来看&#xff0c;“input”翻…

python中的自测语句是什么?

if __name__ __main__:main() 以上转载于:https://www.cnblogs.com/Blaxon/p/4401949.html

mqtt协议详解_阿里云物联网平台使用心得(七)MQTT协议14个报文总览

大家好&#xff0c;物联网爱好小组成员超子&#xff0c;又和大家见面了&#xff0c;超子我能力有限&#xff0c;水平不高&#xff0c;有什么错误的地方&#xff0c;欢迎板砖。超子将参考《MQTT-3.1.1标准协议中文版》PDF手册&#xff0c;详解每个报文的格式&#xff0c;以及如何…

service启动activity_「 Android 10 四大组件 」系列—Service 的 quot; 启动流程 quot;

作者&#xff1a;DeepCoder核心源码关键类路径Service 的启动过程相对 Activity 的启动过程来说简单了很多&#xff0c;我们都知道怎么去创建和启动一个 Service&#xff0c; 那么你有没有从源码角度研究过 Service 启动后在系统层是如何运作的 &#xff1f;第一次看我文章的小…

天池 在线编程 输入流

文章目录1. 题目2. 解题1. 题目 描述 给出两个输入流 inputA 和 inputB(包含退格符), 如果两个输入流最后的结果相等&#xff0c;输出 YES&#xff0c;否则输出 NO。 输入字符只包括小写字母和<。 输入流长度不超过10000。示例 样例1 输入: inputA "abcde<<&q…

[LeetCode] Convert Sorted Array to Binary Search Tree

Given an array where elements are sorted in ascending order, convert it to a height balanced BST. Hide TagsTree Depth-first Search方法一&#xff1a;递归&#xff0c;也是dfs/*** Definition for binary tree* struct TreeNode {* int val;* TreeNode *left;…

python重命名窗口_为《Python实现批量重命名》程序加一个GUI

前一篇文章(Python实现批量重命名)&#xff0c;用Pyton做了一个批量重命名的小脚本程序&#xff0c;但是觉得这个用起来不太方便&#xff0c;于是想要进行一些改进&#xff0c;最好再加上GUI。一、首先&#xff0c;它的修改路径是写死在代码中的&#xff1a;# 图片存放的路径pa…