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

R语言基于UCDP数据集绘制密度图异常问题求解

问题排查与解决方案

核心错误原因

  • 图层类型使用错误:geom_density() 是单变量密度分布计算图层,仅需要映射x轴变量即可自动计算密度值,你额外映射了y = n,图层无法完成双变量的统计计算,因此仅显示坐标轴无绘图内容。
  • 变量类型不匹配:从head(conflict_no)的输出可见year字段为字符类型(<chr>),不适用于时间维度的连续轴可视化。
  • 需求与实现不匹配:你要实现的是不同冲突类型每年发生次数的堆叠趋势图,密度图完全不符合该需求,应改用堆叠柱状图或堆叠面积图实现。

修正代码

# 修正year变量类型
conflict_no <- conflict_no %>% 
  mutate(year = as.numeric(year))

# 绘制堆叠柱状图(最贴合常见的UCDP冲突数量可视化效果)
conflict_no %>% 
  ggplot(aes(x = year, y = n, fill = conflict_type)) + 
  geom_col(position = "stack") +
  labs(x = "年份", y = "冲突数量", fill = "冲突类型")

如果需要实现堆叠面积图效果,仅需将geom_col(position = "stack")替换为geom_area(position = "stack")即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:15:00