【问题标题】:Variable category conditions in ggplot2 density plotggplot2密度图中的变量类别条件
【发布时间】:2014-11-18 02:30:57
【问题描述】:

在 R 中,我想要多个单独的密度图,最好使用 ggplot2 包。数据框有变量V1,它有多个级别(即见下面的数据示例)。

V1 V2
1  5
1  4 
1  2
2  3
2  8
2  6
3  5
3  9

我如何使用 qplot 或 ggplot 为 V1=1 V1=2 和 V1=3 创建密度图,其中 V2 值与 V1 的值相关(即 V1=1 的密度图仅考虑 V2 =(5、4、2))?

【问题讨论】:

    标签: r plot ggplot2 conditional-statements


    【解决方案1】:

    试试

    ggplot(df1, aes(x=V2)) +
                 geom_density(aes(group=V1, colour=V1, fill=V1))+
                 theme_bw()
    

    更新

    您可以使用facet_wrap 创建单独的情节

     ggplot(df1, aes(x=V2))+
                  geom_density(aes(colour=V1, fill=V1))+
                  facet_wrap(~V1)+
                  theme_bw()
    

    数据

    df1 <- structure(list(V1 = c(1, 1, 1, 2, 2, 2, 3, 3, 3), V2 = c(5, 4, 
     2, 3, 8, 6, 5, 9, 10)), .Names = c("V1", "V2"), row.names = c(NA, 
    9L), class = "data.frame")
    

    【讨论】:

    • 我是否可以将构面合并到其中,以便每个密度图都是独立的(V1 有很多级别)?
    • 当我尝试这样做时,我得到以下信息:“layout_base(data, vars, drop = drop) 中的错误:至少一层必须包含用于构面的所有变量”
    • @Warppp 我在您展示的示例或我创建的修改示例中没有收到错误
    • 是的,很有趣。我尝试使用我提供的数据框,它运行良好。我会玩弄我的其他数据。十分感谢你的帮助!这无疑让我更近了一步。
    • @Warpp 您能否显示无效的数据。您可以在 Dropbox 中分享它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-16
    • 1970-01-01
    • 1970-01-01
    • 2012-07-05
    相关资源
    最近更新 更多