探索性数据分析week1笔记

1.1图表分析的准则

老师说此处主要参考了 Edward Tufte(2006)年的 Beautiful Evidence一书,第二条指的是表示出自己所认为的因果关系及相关解释



1.2 探索性图表



legend:传说,也有图例的意思

magent:品红色的

wheat:小麦色的

summary():作一个大致的统计分析,包括最小值,四分位值,最大值,中值

boxplot(pollution$pm,col="blue") 做一个箱型图,色为蓝   abline(h=12)是在图中加入一条基准线,此外v表示纵,h表示横

hist(pollution$pm,col="green")做一个条型图,色为绿  在下面再加上一个rug(pollution$pm)是在条形图下方加网格,显示一个大致分布

hist(pollution$pm,col="green",breaks=100)加上那个breaks ,即将条形图分为100个区间

当然直方图也可以用abline(v=12,lwd=2)来搞起,前者表示竖直线的位置,此处为x=12,后者为线条粗度,越大越粗呢

也可以有abline(v=median(pollution$pm25),col="magenta",lwd=4),此处做出的效果很好,因为有中值做比对,而箱型图中包括了中值呢

条形图:barplot(table(pollution$region),col=‘wheat',main="dkkdkdkkdk")   main主要是标题,另当要绘制的类别型变量为一个因子或有序因子时,可以用plot()直接作图

条形图与直方图有较大区别

条形图主要用于分类数据,并不连在一起,宽度无意义,高度表频数

直方图可表示连续数值数据,连在一起,宽度表区间组距,高度表频率,面积表示频数


于是呢开始于复合比较之道,如图



注意pm25左边是数值型,region右边是分类型,即是y轴为数值型,x轴为分类型


par 是一个类似于matlab中排列图表的函数,mfrow表示是按一个2*1来表示,mar(bottom,left,top,right)给出图象的四个边际,当然也可以不用加,系统自带默认值

好吧,一个最简单最常用的莫过于散点图了

scatterplot

with(pollution,plot(latitude,pm25))

abline(h=12,lwd=2,lty=2)

在上面中plot(x,y)轴,abline中lty=1应该是实线,2则是虚线吧

switch(ity)

case1:__________________

case2:---------------------------------

case3............................................

case4,-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.

当然也可以按分组来加色彩,如with(pollution,plot(latitude,pm25,col=region)) 即指按不同区域这个变量来给出不同色彩

同样亦可如下图,很有意思的说



further resources

R Graph Gallery

R Bloggers

1.3 R中的作图系统

主要分三种,最古老的一种为the base plotting System

the base plotting system

。艺术家的调色板模式

。以一张空白帆布开始(blank canvas)

。以plot函数开始作图(或相似的函数)

。使用注释函数(annotation functions)来add/modify(text,lines,points,axis)


intuitive:直观的

ex:用R中内置的data() :cars,作图 with(cars.plot(speed,dist)),如果想加东西的话,慢慢来自己慢慢加

第二种为the lattice System(晶格系统)不知翻译对否?


那么有一些不足点呢在于

。有时用单个函数调用一个整图会很让人不爽(课上用的是awkward:即尴尬)

。在图中的注释不会那么的直观(annotation,intuitive)

。面板函数和注脚很难使用,且需要强烈的准备(use of  panel functions and subscripts diffcult to wield and requires intense preparation

。一旦图象被创建,就再也不能add(can not add  to the plot once it is created)



到现在还不懂的是region=state.region不知道是咋来的

好吧,明白了,在data()中还有另一个数据集,叫做state.region,老师把这个数据集合到state.x77上去了,好吧

最后一个呢就是流行度最广的ggplot2 System了

比lattice 直观,比base 强大,而且兼具灵活性,可以慢慢加东东的哟



当然要是对背景不爽的话,也是可以换的,可以改默认值的,当然与其他两个系统会有所不同的说

好吧总结一下

。Base  艺术家的调色板,你可以一样一样的加东西上去,但是如果要批量生产的话,可能就得写不少函数了

。lattice 所有的图表呢都由一个函数来表达出来,不能更改

。ggplot2 相当于前面两种的混合体

在使用过程中,如果用了一种系统的函数,就不要再用另一种系统的函数,否则的话,it's so confused


1.4 基础绘图系统(Base plotting System)

encapsulate:封装

devices:此处似为绘图面板的意思




piecemeat :零碎,tweaked:变化


有问题的话就打?par 就好了


上图中将Month转为因素


有意思的是第一个pch.默认情况是。,如果爽的话甚至可以改成字符,比如‘a',于是散点图变成了全是a 的图,哈哈

override:覆盖        specify:指定          specific:具体


类似于空间布局一样的par 函数,las 取值范围为{0,1,2,3},0为默认,1为全水平,2为垂直于轴,3为两座标轴标签全垂直

可以通过par函数来查看默认值的(default values for global graphics parameters),

如:par("lty')   显示:## [1] "solid"     par("col")等等, par("pch")      mar()函数成顺时针排列,下,左,上,右

如par("mar")  显示:##   【1】 5.1  4.1  4.1  2.1 表示图的边际顺时针排列为5.1,4.1,4.1,2.1


图做好了之后,可以用这些个东西往后加     arbitrary:随机的    ,text(-2,-2,"label")意指在图中的(-2.-2)位置 输入label字,legend主要有四个值:topleft/topright/bottomleft/bottomright

比如:with(airquality,plot(Wind,Ozone))

后面加上title(main="名字“) ##add a title

也可以这样




好吧,pch=20就是小圆点,下面这种形式比上节的要简单一点吧


mtext就是写在所有图上面的主题呢,outer不设置的话,是没有地方写mtext的

总结一下:

在基础绘图系统中,是通过一系列的调用R函数来创建一个图的

绘图呢主要有两步了,第一是创建一个plot,第二个呢是给图加注释,如(加线,点,图例,等等)

这个系统呢很灵活,在控制绘图上也有高度的自由,但是同时控制的参数太多,也很烦人,不过默认值还是比较好用的

如果不知道 点代表什么,可以用example(points)来看

rnorm(n)标准正态分布生成n个,rpois(n,lamba)生成泊松分布n个,其中lamba这个参数自定

plot(x,y,type="n")显示一张空图

如g <- gl(2,50,lables = c("male","female"))即是将1和2每个都重复50次,因素 为男,女,

str(g)此处中str功能类似于class等

plot(x,y,type="n")创建一个空图

points(x[g=="male"],y[g=="male"],col="green")再分别往上加点

points(x[g=="female"],y[g=="female"],col="red")

1.5 R中的图形设备(graphics devices in R) scalable可扩展的







这个在使用过程中,最好先用代码试下看行不行,再复制到pdf中,因为将图写入pdf中的时候,是不能可视化的





上面的试了下,是可以的



发布了31 篇原创文章 · 获赞 1 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章