美文网首页
5. 关于ggplot绘图公式复盘的一些问题4

5. 关于ggplot绘图公式复盘的一些问题4

作者: 心惊梦醒 | 来源:发表于2022-09-06 18:41 被阅读0次

      做练习题,不仅仅是为了检验学到的知识,还在教锻炼我们理解问题、解决问题的能力,所以不管直白浅显、深奥晦涩,都应认真对待每一题。

    • 使用本章节已讨论过的技巧,尝试三种方法可视化两个分类变量的分布,使用mpg数据集中的model and manufacturer, trans and class, and cyl and trans进行测试。
    # 只要数据点的数量不是很多,都可以使用geom_jitter()先看下数据的整体分布
    ggplot(mpg,aes(model,manufacturer)) + geom_point() + geom_jitter()
    # 一家汽车制造商生产的同一型号的车辆的配置可能是不同的,所以对应多条记录
    mpg %>% mutate(manufacturer_model = paste(manufacturer,model)) %>% ggplot() + geom_bar(aes(y=manufacturer_model))
    # 柱状图
    ggplot(mpg) + geom_bar(aes(x=trans,color=class,fill=class),position=position_dodge())
    # 使用分面可以看到每个cyl下,各种trans的具体分布
    ggplot(mpg) + geom_bar(aes(trans)) + facet_wrap(vars(cyl))
    
    • 对2D数据可视化,geom_point()在数据点不是很多的情况下,适用于两个连续变量、两个离散变量、一个连续变量和一个离散变量。存在的点重合的问题可以用geom_jitter()解决。
    • 对一个连续变量和一个离散变量的2D可视化,可使用geom_boxplot()geom_violin()geom_histogram()geom_freqpoly()geom_line()geom_path(),一般情
      况下,连续变量(y轴)用来做统计、看分布,离散型变量(x轴或分组)用来分组、做比较、看差异。还有分面。
    • 对两个连续型变量的2D可视化,一般情况下是为了研究两个连续型变量之间是否具有某种关系,比如说相关性关系、线性关系、某变
      量随时间的变化关系等,所以可以用geom_smooth()进行平滑拟合,可以用geom_line()geom_path()研究随时间的变化。
    • 对两个离散型变量的2D可视化,离散型变量一般只能用来计数、分类,所以可以用其中一个离散变量进行计数,另一个用来分类,geom_bar()或分面。
    • axes和legend统称为guides。ggplot2中guides的设置有多种方法,其中可以通过labs()lims()函数同时对多个scales进行设置,也可以通过scale_(aesthetic)_(scale_name)函数对单个scale进行设置。因为这些设置太常用了,所以ggplot单独给出前者以简化操作。
    • labs()xlab()ylab()ggtitle()可设置图片标题、副标题、说明文字、tag(比如文献中多图,每张图的标签)和alt(图像的可替换名字,类似HTML的alt属性)、横纵坐标标题和图例标题labs()使用示例
    • lims()xlim()ylim()可设置坐标轴的显示范围,连续变量、离散变量均可设置,超出范围的点被强制为NA从而不再图像
      中显示。
    • 将一个ggplot对象保存为一个变量(比如p),在交互模式下,直接键入p可出图;在一个loop或function中,需要键入print(p)。还可用ggsave()保存到磁盘上;用summary()简单描述ggplot对象的结构;用saveRDS()保存其cached copy,再用readRDS()恢复它。

    相关文章

      网友评论

          本文标题:5. 关于ggplot绘图公式复盘的一些问题4

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