【问题标题】:Using qplot + facet_wrap, where the plots are ordered by one variable and labeled by another使用 qplot + facet_wrap,其中图按一个变量排序并由另一个变量标记
【发布时间】:2014-01-24 00:21:01
【问题描述】:

我有一个数据集如下:

Date         State     Count   mean
1994-01-05   Alabama   408     581.333
1994-01-06   Alabama   784     581.333
1994-02-08   Alabama   552     581.333
1994-01-05   Arizona   385     759.666
1994-01-06   Arizona   1845    759.666
1994-02-08   Arizona   49      759.666
1994-01-05   Alaska    1067    3224.666
1994-01-06   Alaska    36      3224.666
1994-02-08   Alaska    8571    3224.666

五十个州中的每一个州都有一组有序日期的“计数”。每个状态的计数平均值是状态的排序方式。

我想制作一个包含 50 个州的子图的图,其中计数作为 y 轴,日期作为 x 轴。我希望通过增加平均计数(左上角->右下角)来排列子图。但是,我希望每个子图的标题都包含州(是否也包含其平均值并不重要)。

我试过了:

qplot(Date, Count, data =dataset) + facet_wrap(~mean,nrow=7) 

这导致了一个几乎完美的情节。它由 50 个子图组成,具有正确的轴,并且按其平均计数的递增顺序排列。但是,每个子图的标题不是状态,而是状态的均值。

任何建议将不胜感激!

【问题讨论】:

    标签: r ggplot2 facet


    【解决方案1】:

    目前您无法将表达式传递给facet_wrap,因此一种方法可以按照您希望的顺序创建一个包含级别的因子列。惯用的R 方法是使用reorder

    # create factor
    dataset$State_lab <- with(dataset, reorder(x=State,X=mean))
    # your plot
    qplot(Date,Count,data=dataset) + facet_wrap(~State_lab)
    

    【讨论】:

    • 你 = 太棒了!谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-10
    • 2017-01-27
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多