美文网首页
第一章 使用ggplot2进行数据可视化(下)

第一章 使用ggplot2进行数据可视化(下)

作者: 天涯清水 | 来源:发表于2020-01-02 22:03 被阅读0次

第一章 使用ggplot2进行数据可视化(下)

代码块
一、几何对象

同样是加载tidyverse软件包
几何对象是图中用来表示数据的几何图形对象。即是使用不同的可视化对来表示(同一个)数据。 一个数据可以用多个几何对象表示。ggplot2提供了30多种几何对象。

library(tidyverse)
# left
ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy))

# right
ggplot(data = mpg) + 
  geom_smooth(mapping = aes(x = displ, y = hwy))

左图
右图

在看两个个例子:

ggplot(data = mpg) + 
  geom_smooth(mapping = aes(x = displ, y = hwy, linetype = drv))
image.png
ggplot(data = mpg) + 
  geom_smooth(mapping = aes(x = displ, y = hwy, color = drv, linetype = drv))+
  geom_point(mapping = aes(x = displ, y = hwy, color = drv))
image.png
2、统计变换

绘图时用来计算新数据的算法称为stat(statistical transfermation,统计变换)。ggplot2提供了20多种统计变换。 diamonds数据集也是ggplot2内置数据,含有大约54000颗钻石的信息,包括price, carat, color, clarity, and cut。

ggplot(data = diamonds) + 
  geom_bar(mapping = aes(x = cut))
image.png

geom_bar()函数的统计变换过程:


统计变换过程
几何对象可以和统计变换函数互换使用
ggplot(data = diamonds) + 
  geom_bar(mapping = aes(x = cut))

再看一个例子

ggplot(data = diamonds) + 
  geom_bar(mapping = aes(x = cut, y = ..prop.., group = 1))
image.png
stat_summary强调统计变换
ggplot(data = diamonds) + 
  stat_summary(
    mapping = aes(x = cut, y = depth),
    fun.ymin = min,
    fun.ymax = max,
    fun.y = median
  )

3、位置调整

color或者fill填充图形颜色

ggplot(data = diamonds) + 
  geom_bar(mapping = aes(x = cut, colour = cut))

ggplot(data = diamonds) + 
  geom_bar(mapping = aes(x = cut, fill = cut))
image.png
ggplot(data = diamonds, mapping = aes(x = cut, fill = clarity)) + 
  geom_bar(alpha = 1/5, position = "identity")

ggplot(data = diamonds, mapping = aes(x = cut, colour = clarity)) + 
  geom_bar(fill = NA, position = "identity")
image.png

四、坐标系

ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + 
  geom_boxplot()

ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + 
  geom_boxplot() +
  coord_flip()
image.png

五、图形分层语法

图形分层语法模板

替换尖括号内的数据

ggplot(data = <DATA>) + 
  <GEOM_FUNCTION>(
     mapping = aes(<MAPPINGS>),
     stat = <STAT>, 
     position = <POSITION>
  ) +
  <COORDINATE_FUNCTION> +
  <FACET_FUNCTION>

相关文章

网友评论

      本文标题:第一章 使用ggplot2进行数据可视化(下)

      本文链接:https://www.haomeiwen.com/subject/gwzooctx.html