怎样学习 R 绘图

写在前面:为啥不用excel绘制这些图,用PoweBI,帆软BI等可视化软件来绘图,不是更方便吗?的确,这些工具都很方便,但同时,它们显得很呆,不够灵活,更为致命的是,它们绘制出的图形,分辨率不够,用来出版论文,是不合格的。所以,要做学术的朋友,对R,Python可视化绘图感兴趣的朋友,不妨下点功夫将这些技术学到手。
我之所以,将自己花费4个晚上,8个小时整理出来的文档分享出来,无非是为了减少大家学习技术的时间,我深知入门一种语言的艰辛,因为我在学习的时候,也是网上各种找资料,一个软件下载安装完毕,花费大半天的时间,当初学习一门语言的激情都走了大半;所以,希望大家能够快速上手,将时间花费在能真正提高技术的地方,比如设置图形的颜色,宽度,线条,灵活的修改图形等方面,这也是我接下来要研究的。
看在我这么辛苦的份上,看完不妨点个赞。。。文章最后放本文所需要的软件安装过程链接,用R与Python绘制中国地图,某省地图,以及可视化技术的介绍。。。
本文要绘制的图形以及如何使用这些图形:散点图、折线图、直方图、条形图、箱线图、饼图、热力图、蜘蛛图、二元变量分布和成对关系。
用R绘图软件:w10版Rstudio
条形图通过垂直的或水平的条形展示了类别型变量的分布(频数)。
\u0026gt; install.packages("vcd")\u0026gt; library(vcd)\u0026gt; counts\u0026lt;-table(Arthritis$Improved)\u0026gt; counts None Some Marked 42 14 28 \u0026gt; barplot(counts,main="简单的条形图",xlab="Improvement",ylab="Frequency")\u0026gt; counts\u0026lt;-table(Arthritis$Improved,Arthritis$Treatment)\u0026gt; counts Placebo Treated None 29 13 Some 7 7 Marked 7 21\u0026gt; plot(counts,main="堆砌条形图",xlab="Treatment",ylab="Frequency",col=c("red","yellow","green"))\u0026gt; barplot(counts,main="堆砌条形图",xlab="Treatment",ylab="Frequency",col=c("red","yellow","green"),legend=rownames(counts))\u0026gt; barplot(counts,main="分组条形图",xlab="Treatment",ylab="Frequency",col=c("red","yellow","green"),beside=T,legend=rownames(counts))\u0026gt; states\u0026lt;-data.frame(state.region,state.x77)\u0026gt; means\u0026lt;-aggregate(states$Illiteracy,by=list(state.region),FUN=mean)\u0026gt; means\u0026lt;-means\u0026gt; barplot(means$x,names.arg=means$Group.1)\u0026gt; title("均值条形图")怎样学习 R 绘图

?
怎样学习 R 绘图

使用中注意:我用plot()与barplot()绘制的堆砌条形图并不一样!!!要想使得条形图“横着放”,barplot()函数中加上horiz=T
在绘图堆砌条形图时,使用table()函数将数据表格化,之所以使用table()是为了防止类别型变量不是因子,本例中Arthritis$Improved是一个因子。
散点图的英文叫做 scatter plot,它将两个变量的值显示在二维坐标中,非常适合展示两个变量之间的关系。
\u0026gt; x\u0026lt;-rnorm(100)\u0026gt; y\u0026lt;-2*x+rnorm(100)\u0026gt; plot(x,y,main="Linearly correlated random numbers",xlab="x",ylab="2*x+noise",xlim=c(-4,4),ylim=c(-4,4))\u0026gt; plot(0:25,0:25,pch=0:25,xlim=c(-1,26),ylim=c(-1,26),main="point stytles (pch)")\u0026gt; text(0:25+1,0:25,0:25)


推荐阅读