ggplot画图笔记
1.数据集相加符号 %+%
2.图形属性映射 aesc()函数
aes(x=mpg,y=wt) 把mpg属性映射为x,wt属性映射为y
图层图形属性可以添加、修改和删除映射。
如
3.位置调整参数
4.条件筛选函数
big_cities<-subset(us.cities,pop>500000)
筛选出数据集中,特征变量pop大于500000的数据集
5.固定标度的定义域
- limits:固定标度的定义域。限制定义域可以帮助我们移除不想在图形上展示的数据(即设置比数据的完整范围更小的limits),同时也可以保证要进行比较的多个图形中的绘制范围一致。 任何不在此标度定义域内的值均被丢弃。
- breaks和labels:breaks控制着显示在坐标轴或图例上的值,即坐标轴上应该显示哪些刻度线的值,或一个连续型标度在一个图例中将被如何分段。labels指定了应在断点处显示的标签。若设置了labels,则必须同时指定breaks。
注意区分limits和breaks,如下:
p<-qplot(cyl,wt,data=mtcars)
p
p+scale_x_continuous(breaks=c(5.5,6.5))
p+scale_x_continuous(limits=c(5.5,6.5))
对应的图分别为



图p 图breaks 图limits
6.位置标度有关的一对函数 xlim()和ylim()
如下所示:
xlim(10,20) :一个从10到20的连续型标度
ylim(20,10): 一个从20到10的反转后连续型标度
xlim("a","b","c"):一个离散型的标度
xlim(as.Date(c("2008-05-01","2008-08-01"))):一个从2008年5月1日到2008年8月1日的日期型标度。
最常用的连续型位置标度是scale_x_continuous和scale_y_continuous,它们均将数据映射到x轴和y轴。每个连续型标度均可接受一个trans参数,允许指定若干种线性或非线性的变换,而每一种变换都是由所谓的“变换器”来实现的,变换器描述了变换本身和对应的逆变换,以及如何去绘制标签。常用的变换器如下图

变换通常用来修改位置标度,所以对于x,y和z标度都是有简便写法的,scale_y_log10()与scale_y_continuous(trans="log10")是等价地。这样y轴的标度就会以log10(y)为单位,而不会以y为单位.

7.日期和时间
值基本上属于连续型,但在标注坐标轴时有着特殊的处理方式。目前我们仅支持属于date类的日期值和属于POSIXct类的时间值。如果你的日期和时间值是其他格式的,则需要使用as.Date()或as.POSIXct()对其进行转换。
对于日期坐标轴,有三个参数可用于控制其外观和刻度的位置:major、minor以及format。
- 参数major和minor用以按照时间的单位,即年(year)、月(month)、周(week)、日(day)、时(hour)、分(minute)、秒(second)来指定主要和次要断点的位置,并且允许以这些单位的倍数出现。例如,major=“2 weeks”将在每隔两周的位置放置一个主刻度。如果未被指定,日期标度可以自动选出合适的默认值。
- 参数format指定了刻度标签的格式。下表列出了用以展示日期各个组成部分的特殊字符。例如,如果你想以14/10/1979的形式显示日期,就可以使用字符串“%d%m%y”

Insur_csv$WATCH_TIME<-as.Date(Insur_csv$WATCH_TIME) //先把特征变量转换为时间变量
plot<-ggplot(Insur_csv,aes(WATCH_TIME,WATCH_DURATION_KD))
plot=plot+geom_bar(stat="identity",colour="black")+geom_text(aes(label=round(WATCH_DURATION_KD),vjust=1.5)) //round函数是取整,vjust是设置文本显示在矩形下面
plot+scale_x_date(limits=as.Date(c("2014-11-17","2014-11-23")),labels=date_format("%Y,%m,%d")) //设置x轴的范围和时间格式。

做个小推广:程序员经常久坐,颈椎毛病比较多,特别推荐ventry颈椎保健枕
ggplot画图笔记的更多相关文章
- android canvas 画图笔记
android canvas 画图笔记 1.PathEffect类 画虚线 Paint p = new Paint(Paint.ANTI_ALIAS_FLAG); p.setStyle(Paint.S ...
- R ggplot学习笔记1
R 可视化学习笔记 记参数挺费劲的,还是用的时候查官方文档吧,现在记个大概就行吧~ 1.ggplot2分层次绘图 1.1 核心理念 把绘图与数据分离,把数据相关的绘图与数据无关的绘图分离,按图层作图. ...
- Python画图笔记
matplotlib的官方网址:http://matplotlib.org/ 问题 Python Matplotlib画图,在坐标轴.标题显示这五个字符 ⊥ + - ⊺ ⨁,并且保存后也能显示 h ...
- MATLAB画图笔记
plot函数 plot(x,y)默认格式: 若x,y是向量,则它们必须具有相同的长度.函数将以x为横轴,绘制y. 若x,y都是矩阵,则它们必须具有相同的尺寸,plot函数将针对x的各列绘制y的每列.更 ...
- ggplot2包--R可视化
1.ggplot2发展历程 ggplot2是Hadley在爱荷华州立大学博士期间的作品,也是他博士论文的主题之一,实际上ggplot2还有个前身ggplot,但后来废弃了,某种程度上这也是Hadley ...
- R包——ggplot2(二)
关于ggplot包(二) 关于ggplot包(二) 标尺(Scale) 从前面可以看到,画图其实就是在做映射,不管是映射到不同的几何对象上,还是映射各种图形属性.在对图形属性进行映射之后,使用标尺可以 ...
- ggplot2 scale相关设置
ggplot2 scale相关设置 标度设置:主要用于在ggplot画图后的各个图层进行调整设置. 1.相关属性scale设置 包括scale_size().scale_alpha().scal ...
- python matplotlib 绘图基础
在利用Python做数据分析时,探索数据以及结果展现上图表的应用是不可或缺的. 在Python中通常情况下都是用matplotlib模块进行图表制作. 先理下,matplotlib的结构原理: mat ...
- 利用ggplot2画出各种漂亮图片详细教程
1.Why use ggplot2 ggplot2是我见过最human friendly的画图软件,这得益于Leland Wilkinson在他的著作<The Grammar of Graphi ...
随机推荐
- cookie封装函数(添加,获取,删除)
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- php中strlen,mb_strlen,count之区别
转自 http://www.cnblogs.com/mo-beifeng/archive/2011/08/09/2133039.html 这不是一个固定的数字.本文简要说明一下限制规则. strlen ...
- codevs3728联合权值(LCA)
3728 联合权值 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 输入描述 Input Des ...
- Vue 页面回退参数被当作字符串处理
当时情景是这样的,我从A页面跳到B页面时会传一个Boolean类型的参数,当B跳到C,再从C返回B的时候,控制台打印发现参数还在,可是判断怎么都不起作用,后来发现,当页面返回的时候,默认将参数变成了字 ...
- Saiku导出excel指标列无线条以及0与空值显示问题(三十二)
Saiku导出excel指标列无线条以及0与空值显示问题 描述: 数据库中字段值为0 ,与数据库中字段值为 null 时 ,saiku会将为0 以及为 null 的数据都不展示出来,但是我们其实希望数 ...
- 常用mysql记录
多个关键词 like$joinwhere .=" and CONCAT(`JpTel`,`JpName`) Like '%$keywords%' ";
- 【BZOJ1124】[POI2008]枪战Maf(基环树_构造)
被教练勒令做题不能看题解后的第一道新题,自行 yy 了好久终于 AC 了(菜啊)--写博客纪念. 题目: BZOJ1124 分析: 考虑每个人向他要打的人连边.根据题意,所有点都有且只有一条出边.那么 ...
- Ch03 React/JSX/Component 簡介
Facebook 本身有提供 Test Utilities,但由于不够好用,所以目前主流开发社群比较倾向使用 Airbnb 团队开发的 enzyme,其可以与市面上常见的测试工具(Mocha.Karm ...
- ibatis知识点
1:ibatis是apache的一个开源的项目,是一个O/R mapping解决方案,优点,小巧,灵活.2:搭建环境:导入ibatis相关jar包,jdbc驱动包等3:配置文件: jdbc连接的属性文 ...
- Angular——引入模板指令
基本介绍 引入模板一般都是固定的东西,比如导航栏,比如页面的底部,每个页面都重复写很麻烦,不如直接定义两个模板,引入到需要的页面中.这个过程实际是一个跨域的异步请求过程. 基本使用 <!DOCT ...