您现在的位置:主页 > 数据可视化 > R数据可视化之ggplot2 (五)

R数据可视化之ggplot2 (五)

2017-06-19 15:48

u=2156138114,3697068155&fm=21&gp=0 前面讲到了,使用ggplot2解决图形的重叠问题,还有给图表添加说明等,加之补充了箱线图和小提琴图,今天,主要来讲讲如何调整坐标轴的相关设置,包括坐标轴刻度,坐标轴标签,变换坐标系,然后讲讲ggplot2中重要的一个函数:facet.那么加之前面的四篇,ggplot2的基本画图就差不多了,能够把这些基本的知识融合起来,我们还需要学习一下ggplot2 的思想,就好像是语法吧,这会在下一篇讲,还是按照刚开始的那种想法,先不去管什么思想什么的,先看看实例,动手先画画,见识之后,再来探讨那些思想啊理论啊,可能会更加的自然和深刻.那么先来看看坐标轴可以怎么修改.

 1.旋转xy轴.

ggplot(PlantGrowth, aes(x=group, y=weight)) + geom_boxplot() + coord_flip()前期

 

2.设定坐标轴刻度的范围

ggplot(PlantGrowth, aes(x=group, y=weight)) + geom_boxplot() + coord_flip()+
  ylim(0, max(PlantGrowth$weight))

得到同时我们也可以使用

ylim(0, 10)
或者

scale_y_continuous(limits=c(0, 10))

都可以改变刻度的范围.同样X轴的范围也可以这么改,值得注意的是坐标轴变量得是连续型的,对于离散型的我们用scale_x_discrete( limits(  ) )来自定义范围与顺序.

 

3.改变坐标轴的方向

ggplot(PlantGrowth, aes(x=group, y=weight)) + geom_boxplot() + coord_flip()+
 scale_y_reverse(limits=c(6, 0))

114.缩放:coord_fixed(ratio=0.5)

 添加标签:scale_x_discrete(labels=c("xxx") )

自定义刻度线 scale_x_discrete(breaks=c(    ) )

ggplot(PlantGrowth, aes(x=group, y=weight)) + geom_boxplot() + coord_flip()+
 scale_y_reverse(limits=c(6, 0),breaks=c(1,2,3,4,5,6))

3

ggplot(PlantGrowth, aes(x=group, y=weight)) + geom_boxplot() + coord_flip()+
 scale_y_reverse(limits=c(6, 0),breaks=c(1,2,3,4,5,6),labels=c("一","二","三","四","五","六"))

77看到坐标的区别了吗?

5.标签旋转,移除标签,颜色,大小都可以设定.添加标题

ggplot(PlantGrowth, aes(x=group, y=weight)) + geom_boxplot() + coord_flip()+
 scale_y_reverse(limits=c(6, 0),breaks=c(1,2,3,4,5,6),labels=c("一","二","三","四","五","六"))+

theme(axis.text.x=element_text(colour="red",size=10,angle=-60) )+

226.变换坐标系:

ggplot(wind, aes(x=DirCat, fill=SpeedCat)) +
  geom_histogram(binwidth=15, boundary=-7.5, colour="black", size=.25) +
  guides(fill=guide_legend(reverse=TRUE)) +
  coord_polar()

6

 

7.关于facet

facet就是基本绘图中的par(mfrow=c(  ))即排版.这里facet可以后接一个变量,那么它会根据变量的水平来画出不同的图,然后并排在一张画板上以供对比,

ggplot(mpg, aes(x=displ, y=hwy)) + geom_point()+ facet_grid(drv ~ .)

444

看看这样ggplot(mpg, aes(x=displ, y=hwy)) + geom_point()+ facet_grid(. ~ cyl)的区别,发现没一个横排一个竖排.

54

再看看这个ggplot(mpg, aes(x=displ, y=hwy)) + geom_point()+ facet_grid(drv ~ cyl) 发现是横着按drv ~ cyl组成的矩阵排的

45

当然还有很多参数可以来设定facet的美观,这里仅是展示基本的功能,方便记忆.先了解大致的画图的框架,以后如要深入修改,可以拿着书一查询参数,就可以.那么这篇就讲到这,关于坐标轴和分面.下篇讲一下其他的图形.以及综合前面几篇内容.欢迎继续阅读.


未完待续,

PPV原创文章,严禁转载. (文:@白加黑治感冒

-大数据培训讲师

国内领先的大数据学习社区和职业培训平台,欢迎关注!

qrcode_for_gh_5309ccdda10b_344