【问题标题】:ggplot2: Single smooth line for several line plots within facetsggplot2:平面内多个线图的单条平滑线
【发布时间】:2016-10-24 08:15:01
【问题描述】:

我想绘制多个面,每个面有几条线。在每个方面,对于一组线图,我想展示一种平滑线,代表给定特定方面中所有这些线的总体趋势。 有人知道这是否可能吗?到目前为止,我已经尝试过这样的事情:

ggplot(data = mydata, aes(x = x, y = y, group = group)) + geom_line('GRAY') + facet_wrap(~ class) + geom_smooth('loess') (see figure)

但是,我观察到的是每个刻面内的每个线图都有另一条线,而不是每个刻面内的一条线。

提前致谢

【问题讨论】:

  • 请模拟一些数据来证明你已经尝试过什么以及你追求什么。您正在使用的 geom_line() 可能是添加了一行。你确定你需要它吗?
  • @ValterBeaković 我尝试了你的建议,没有任何改变。相反,我得到了相同的情节,每个方面的所有类别。
  • @RomanLuštrik 我添加了它生成的图形。
  • 你能提供一个mydata的样本吗?

标签: r plot ggplot2 smooth facet-wrap


【解决方案1】:

这是 iris 数据集的示例:

    gg <- ggplot(iris, aes(x = Sepal.Length, y = Petal.Length)) + 
            geom_line() + 
            facet_wrap(~ Species) +
            geom_smooth(data = within(iris, Species <- NULL), fill = "red")
    gg 

【讨论】:

  • 这不是答案。如果您想帮助 OP(不过,他或她应该自己解决),请随时编辑他们的问题。
  • 也许我解释错了,但这并不是我想要做的。我有多条线,但在同一个方面和多个方面。在那个使用 iris 数据集的示例中,每个 facet 有一行,而我有很多。
  • 这就是我要求原始数据集样本的原因。 iris 示例是在等待样本时尝试提供帮助....
【解决方案2】:
... +
geom_smooth(aes(group=class), method="lm") +
...

应该做一行公关。方面

【讨论】:

    猜你喜欢
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多