1、第五章 数据可视化5.1低水平绘图命令5.2高水平绘图命令习题5.3交互绘图命令5.1 低水平绘图命令第五章 数据可视化【例5.1】随机产生80个点,并绘制图形。set.seed(1234)xyplot(x=x,y=y)plot(x,y)执行结果l点5.1 低水平绘图命令第五章 数据可视化添加标题和标签plot(x,y,xlab=name of x,ylab=name of y,main=Scatter Plot)执行结果l点5.1 低水平绘图命令第五章 数据可视化更改点的形状默认情形下,绘图字符为空心点,可以使用pch选项参数进行更改.plot(x,y,xlab=name of x,ylab
2、=name of y,main=Scatter+Plot,xlim=c(1,80),ylim=c(0,200),pch=19)执行结果l点5.1 低水平绘图命令第五章 数据可视化l点参数作用col绘图字符的颜色col.axis坐标轴文字颜色col.lab坐标轴标签颜色col.main标题颜色col.sub副标题颜色fg前景色bg背景色与颜色相关的参数5.1 低水平绘图命令第五章 数据可视化l线【例5.2】随机产生50个时间点,并绘制图形。t set.seed(1234)vplot(t,v,type=l)执行结果5.1 低水平绘图命令第五章 数据可视化l线(1)type的取值:type=p表示点
3、,type=l表示线,type=b表示点划线。(2)更改线条类型R中提供了很多类型的线条,可以通过lty选项来设定。执行plot(t,v,type=l,lty=2),结果如图5.6。5.1 低水平绘图命令第五章 数据可视化l线lty取值对应的线型5.1 低水平绘图命令第五章 数据可视化l线(3)更改颜色与点更改点的颜色方法相同。(4)线条变宽plot(t,v,type=l,lwd=2)(5)点与线有时候,我们还需要将点突显出来,此时需要利用type选型。plot(t,v,type=b)(6)拟合平滑直线在做线性回归时,常常会在散点图中添加一条拟合直线以查看效果。model plot(x,y)#
4、画点abline(model,col=“blue”)#画回归直线执行结果5.1 低水平绘图命令第五章 数据可视化l线5.1 低水平绘图命令第五章 数据可视化l线(7)拟合平滑曲线在散点图上使用loess函数画一条拟合的平滑曲线。plot(x,y)model_loessfitordlines(xord,fitord,lwd=2,lty=2,col=blue)执行结果5.1 低水平绘图命令第五章 数据可视化l面(1)饼图饼图就是将一个圆(或者圆饼)按分类变量分成几块,每一块所占的面积比例就是相对应的变量在总体中所占的比例。【例5.3】随机产生10年的数据,yearset.seed(1234)cou
5、nts lb pie(counts,labels=lb)#画饼图执行结果5.1 低水平绘图命令第五章 数据可视化l面(2)条形图条形图就是通过垂直或者水平的条形去展示分类变量的频数。利用例5.3数据绘制条形图。barplot(counts,names.arg=year,col=rainbow(10)执行结果5.1 低水平绘图命令第五章 数据可视化l面(3)直方图前面介绍的两种图形一般都是用来处理二维数据的,那么对于一维数据,常用的图形就有这里所说的直方图。直方图在横轴上将数据值域划分成若干个组别,然后在纵轴上显示其频数。在R语言中,可以使用hist()函数来绘制直方图。set.seed(123
6、4)xhist(x)执行结果5.1 低水平绘图命令第五章 数据可视化l面修改颜色,组数 hist(x,breaks=10,col=gray)添加核密度曲线 hist(x,breaks=10,freq=FALSE,col=gray)lines(density(x),col=red,lwd=2)添加正态密度曲线 h xfityfityfitlines(xfit,yfit,col=blue,lwd=2)5.1 低水平绘图命令第五章 数据可视化l面(4)箱线图箱线图通过绘制连续型变量的五个分位数(最大值、最小值、25%分位数、75%分位数以及中位数)描述变量的分布。绘制例5.3中数据counts箱线图
7、:boxplot(counts)执行结果第五章 数据可视化5.2高水平绘图命令5.1低水平绘图命令习题大数据应用人才培养系列教材5.3交互绘图命令5.2 高水平绘图命令第五章 数据可视化l认识ggplot2(1)特点ggplot2的核心理念是将绘图与数据分离,数据相关的绘图与数据无关的绘图分离。ggplot2是按图层作图。ggplot2保有命令式作图的调整函数,使其更具灵活性。ggplot2将常见的统计变换融入到了绘图中。5.2 高水平绘图命令第五章 数据可视化l认识ggplot2(2)画布 ggplot(data=,mapping=)(3)图层图层可以允许用户一步步的构建图形,方便单独对图层
8、进行修改。图层用+表示,如:pp library(ggplot2)p p+geom_point()#第二层,画散点图效果如图l映射5.2 高水平绘图命令第五章 数据可视化将年份映射到颜色属性:pp+geom_point()l映射5.2 高水平绘图命令第五章 数据可视化将排量映射到散点大小(见图5.17):p p p p p+scale_color_manual(values=c(blue2,red4)#增加标度l标度5.2 高水平绘图命令第五章 数据可视化标度函数描述scale_alphaalpha通道值(灰度)scale_brewer调色板,来自colorbrewer.org网站展示的颜色标
9、度scale_continuous连续标度scale_data日期scale_datetime 日期和时间scale_discrete离散值scale_gradient两种颜色构建的渐变色scale_gradient2 3中颜色构建的渐变色scale_gradientn n种颜色构建的渐变色l标度5.2 高水平绘图命令第五章 数据可视化scale_grey灰度颜色scale_hue均匀色调scale_identity直接使用指定的取值,不进行标度转换scale_linetype用线条模式来展示不同scale_manual手动指定离散标度scale_shape用不同的形状来展示不同的数值scal
10、e_size用不同大小的对象来展示不同的数值l分面5.2 高水平绘图命令第五章 数据可视化分面就是控制分组绘图的方法和排列形式。分面函数描述facet_grid将分面放置在二维网格中facet_wrap将一维的分面按二维排列l分面5.2 高水平绘图命令第五章 数据可视化【例5.7】按年分组,一列显示。p p pp p p+facet_wrap(year,ncol=1)#分面l分面5.2 高水平绘图命令第五章 数据可视化l其它修饰5.2 高水平绘图命令第五章 数据可视化【例5.8】增加图名并精细修改图例(见图5.22)。p p p p p p p p pl其它修饰5.2 高水平绘图命令第五章 数
11、据可视化l其它修饰5.2 高水平绘图命令第五章 数据可视化【例5.9】条形图排序。class2 class2 mpg$class2 p p +geom_bar(aes(fill=class2)#绘制条形图l其它修饰5.2 高水平绘图命令第五章 数据可视化l其它修饰5.2 高水平绘图命令第五章 数据可视化【例5.10】根据年份分别绘制条形图,position控制位置调整方式,图5.24为position=identity结果。p-ggplot(mpg,aes(class2,fill=factor(year)#分组填充p +geom_bar(position=identity,alpha=0.5)
12、l其它修饰5.2 高水平绘图命令第五章 数据可视化p-ggplot(mpg,aes(class2,fill=factor(year)#分组填充p +geom_bar(position=dodge,alpha=0.5)#l其它修饰5.2 高水平绘图命令第五章 数据可视化p-ggplot(mpg,aes(class2,fill=factor(year)#分组填充p +geom_bar(position=stack,alpha=0.5)#叠加条形图l其它修饰5.2 高水平绘图命令第五章 数据可视化p-ggplot(mpg,aes(class2,fill=factor(year)#分组填充 p +ge
13、om_bar(position=fill,alpha=0.5)第五章 数据可视化5.3交互绘图命令5.1低水平绘图命令习题大数据应用人才培养系列教材5.2高水平绘图命令lrCharts包library(rCharts)airquality$Month-as.factor(airquality$Month)#转换为因子类型rPlot(Ozone Wind|Month,data=airquality,color=Month,type=point)rPlot函数通过type指定图表类型。5.3 交互绘图命令第五章 数据可视化lplotly包library(plotly)plot_ly(midwest
14、,x=percollege,color=state,type=box)执行结果5.3 交互绘图命令第五章 数据可视化lshiny包(1)Shiny具有如下特性:只用几行代码就可以构建有用的web应用程序不需要用JavaScript。Shiny应用程序会自动刷新计算结果,这与电子表格实时计算的效果类似。当用户修改输入时,输出值自动更新,而不需要在浏览器中手动刷新。Shiny用户界面可以用纯R语言构建,如果想更灵活,可以直接用HTML、CSS和JavaScript来写。可以在任何R环境中运行(R命令行、Windows或Mac中的Rgui、ESS、StatET、RStudio等)基于Twitter
15、Bootstrap的默认UI主题很吸引人。高度定制化的滑动条小工具(slider widget),内置了对动画的支持。预先构建有输出小工具,用来展示图形、表格以及打印输出R对象。采用websockets包,做到浏览器和R之间快速双向通信。采用反应式(reactive)编程模型,摒弃了繁杂的 事件处理代码,这样你可以集中精力于真正关心的代码上。开发和发布你自己的Shiny小工具,其他开发者也可以非常容易地将它加到自己的应用中。5.3 交互绘图命令第五章 数据可视化lshiny包5.3 交互绘图命令第五章 数据可视化lshiny包5.3 交互绘图命令第五章 数据可视化(2)最简单的shinylsh
16、iny包5.3 交互绘图命令第五章 数据可视化(3)三种运行方式lshiny包5.3 交互绘图命令第五章 数据可视化(4)UI布局lshiny包5.3 交互绘图命令第五章 数据可视化(4)UI布局lshiny包5.3 交互绘图命令第五章 数据可视化(4)UI布局lshiny包5.3 交互绘图命令第五章 数据可视化(4)UI布局lshiny包5.3 交互绘图命令第五章 数据可视化(5)输入lshiny包5.3 交互绘图命令第五章 数据可视化(5)输入lshiny包5.3 交互绘图命令第五章 数据可视化(5)输入lshiny包5.3 交互绘图命令第五章 数据可视化(6)输出lshiny包5.3 交
17、互绘图命令第五章 数据可视化(6)输出lshiny包5.3 交互绘图命令第五章 数据可视化(6)输出lshiny包5.3 交互绘图命令第五章 数据可视化(7)添加标签lshiny包5.3 交互绘图命令第五章 数据可视化lshiny包5.3 交互绘图命令第五章 数据可视化lshiny包5.3 交互绘图命令第五章 数据可视化第五章 数据可视化5.1低水平绘图命令大数据应用人才培养系列教材5.2高水平绘图命令习题5.3交互绘图命令1 可以用来克服散点图中数据点重叠问题。A 脸谱图 B 直方图 C 星状图 D 向日葵散点图2在“箱线图”中,箱体的底部表示 。A 上四分位数 B 中位数 C 下四分位数 D 众数3 可以用来克服散点图中数据点重叠问题。A 脸谱图 B 直方图 C 星状图 D 向日葵散点图4在“箱线图”中,箱体的底部表示 。A 上四分位数 B 中位数 C 下四分位数 D 众数5 图和 图有助于描绘两个变量间的关系。6 函数能按向量绘制图形。习题:感谢聆听
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。