如何在R中绘制多分组时间序列折线图(种子发芽率分析)
解决种子发芽率可视化需求
首先修正你的ggplot代码逻辑,核心是调整分面维度和折线的映射关系:
关键调整点
- 折线的分组(
group)和颜色(color)应该映射到Phase 2的X/Y/Z组,因为你需要这三组以不同折线呈现 - 分面需要同时包含
Phase 1(A/B)和Source,实现A/B作为独立子图、Source并列展示的效果
修正后的代码
假设你的长格式数据df1包含列:days_num、germination、source、phase1(值为A/B)、phase2(值为X/Y/Z),使用以下代码:
ggplot(df1, aes(x = days_num, y = germination, group = phase2, color = phase2)) + geom_line() + # 分面:纵向是Phase1的A/B,横向是不同Source(并列展示) facet_grid(phase1 ~ source) + # 可选:优化图例和标签 labs(color = "Phase 2 Group", x = "Days", y = "Germination Rate") + theme_bw()
代码说明
group = phase2确保每个Phase2组绘制独立折线,color = phase2给不同组分配不同颜色facet_grid(phase1 ~ source)将Phase1的A/B作为纵向子图,不同Source横向并列,每个面板对应一组Phase1+Source的组合,面板内展示该组合下Phase2各组的发芽率变化- 如果希望Source和Phase1的子图全部横向排列,可改用
facet_wrap(~ phase1 + source, nrow = 1)
内容的提问来源于stack exchange,提问作者Stacey
相关产品推荐
相关产品推荐

