You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于ID拆分绘图:ggplot2按VarC着色、VarD设置点形状

解决方案

你只需要在ggplot()的aes()映射里添加color = VarC和shape = VarD参数,就能实现按VarC着色、按VarD设置点形状的需求,同时保留按ID拆分生成独立绘图的逻辑。修改后的完整代码如下:

plot_list <- lapply(split(data.df, data.df$ID), function(x)
{
  ggplot(x, aes(x = VarA, y = VarB, color = VarC, shape = VarD)) + 
    geom_point() +
    theme_bw()
})

补充说明

  • color = VarC:让点的颜色根据VarC的两个因子水平自动区分,ggplot会默认生成对应图例
  • shape = VarD:让点的形状根据VarD的两个因子水平自动设置,同样会生成对应图例
  • 由于VarC和VarD都是2水平的因子,ggplot会自动分配两种颜色和两种不同的点形状,无需额外手动指定

内容的提问来源于stack exchange,提问作者alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 02:55:20