r - 在 R 中使用带有 ggplot 的 geom_line 时的锯齿形
问题描述
在 R 中使用以下代码时,我真的很感激对 zagging 的一些见解:
tbi_military %>%
ggplot(aes(x = year, y = diagnosed, color = service)) +
geom_line() +
facet_wrap(vars(severity))
数据集由 5 个变量(3 个字符,2 个数字)组成。任何见解将不胜感激。
解决方案
这只是一个标准数据集的说明。假设我们有兴趣根据饮食绘制小鸡的体重随时间的变化。我们会尝试这样绘制:
library(ggplot2)
ggplot(ChickWeight, aes(Time, weight, colour = factor(Diet))) +
geom_line()
您可以看到锯齿形图案出现,因为每个饮食/时间点都有多个观察值。因为geom_line
根据 x 轴对数据进行排序,所以这显示为一条垂直线,横跨每个饮食当时的数据点范围。
数据有一个名为“Chick”的附加变量,用于区分单个小鸡。包括在分组中解决了锯齿形图案,每条线都是每只小鸡随时间变化的重量。
ggplot(ChickWeight, aes(Time, weight, colour = factor(Diet))) +
geom_line(aes(group = interaction(Chick, Diet)))
如果您没有一个额外的变量来区分各个趋势,您可以选择汇总每个时间点的数据,例如,取每个时间点的平均值。
ggplot(ChickWeight, aes(Time, weight, colour = factor(Diet))) +
geom_line(stat = "summary", fun = mean)
由reprex 包于 2021-08-30 创建(v1.0.0)
推荐阅读
- php - 使用 SimpleXml 从 xml 文件中提取数据
- c++ - PCL:如何从 PCL 1.8.1 中的 k-means 聚类中提取聚类标签?
- json - 如果多个键具有指定值,则使用 jq 返回布尔值
- django - Django 超级用户创建无响应
- java - 当我运行'cordova build android'时,我不断收到“无法运行”javac -version””
- jquery - 如何在 django 中使用 jquery 更改多个图像 src
- java - 迭代所有无平方复合材料 < L
- c# - 按索引访问实体框架表列
- java - 如何将 RecyclerView 放入 Fragment?
- php - 如何通过 html 表单将文件发送到 $_FILE?