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

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

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

Time series with line and path plots

  • geom_line()geom_path()的区别是:前者根据点在x轴上出现的顺序进行连接,后者根据点在数据中出现的顺序进行连接。
  • 设置factor的levels除了可以用factor()函数的levels进行手动指定之外,还可以用reorder(),这个函数会根据第二个变量对第一个变量的levels进行排序,函数帮助文档如下:
reorder(x, X, FUN = mean, ...,order = is.ordered(x))
- 第一个参数x为一个atomic vector
- 第二个参数X为与x等长的向量
- 第三个参数FUN为统计函数
- 第四个参数为传递给FUN的其他参数
- 第五个参数order为是否返回ordered factor,默认与x相同
举例说明:
ggplot(mpg, aes(reorder(class, hwy), hwy)) + geom_boxplot()
reoder()根据class将hwy分为若干个子集,对每个子集应用mean函数,最后根据计算得到的平均值对class进行排序

Beautiful!!!

  • 比较某变量在多个组别之间的分布,不要直接用count,要用density
  • 三种比较subgroup之间分布的方式:geom_violin()geom_freqpoly()和美学属性colorgeom_histogram()和分面,三者的优势和劣势分别是:小提琴图可以看到变量更详细的信息,y轴上的宽度代表了对应值处的密度信息,但底层的密度算法有时候会使结果难以解释;频率多边形图的底层感知任务更容易;分面会是的比较比较困难,但可以看到每一个组的分布。
  • 举个例子说明geom_bar()中可理解的美学属性weight到底干了个啥:
g <- ggplot(mpg, aes(class))
p1 <- g + geom_bar()
p2 <- g + geom_bar(aes(weight = displ))
library(tidyverse)
aaa <- mpg %>% group_by(class) %>% summarise(www=sum(displ))
p3<- ggplot(aaa,aes(class,www)) + geom_bar(stat="identity")
ggpubr::ggarrange(p1,p2,p3,ncol=1)
# p2和p3的效果是一样的

相关文章

网友评论

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

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