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

Python多折线图绘制:如何从DataFrame获取事件类型年度频次数据

实现年度事件类型多折线图的步骤

第一步:数据预处理

假设你用Python的pandas处理数据,步骤如下:

  1. 导入依赖库并读取数据集:
import pandas as pd
# 替换成你的数据集路径(如CSV/Excel文件)
df = pd.read_csv("your_dataset.csv")
  1. 提取目标列并清洗数据:
# 仅保留YEAR和EVENT_TYPE两列
df_filtered = df[["YEAR", "EVENT_TYPE"]]
# 确保年份为数值类型,避免绘图时排序混乱
df_filtered["YEAR"] = pd.to_numeric(df_filtered["YEAR"], errors="coerce")
# 移除年份或事件类型为空的无效行
df_filtered = df_filtered.dropna(subset=["YEAR", "EVENT_TYPE"])
  1. 统计每年各事件类型的发生次数:
# 用透视表生成「年份-事件类型-次数」的结构化数据
event_year_count = df_filtered.pivot_table(
    index="YEAR",
    columns="EVENT_TYPE",
    aggfunc="size",
    fill_value=0  # 某年份无该事件时填充0
)
# 按年份排序,保证X轴顺序正确
event_year_count = event_year_count.sort_index()

第二步:绘制多折线图

方法一:用Matplotlib手动绘制

import matplotlib.pyplot as plt

# 设置画布大小
plt.figure(figsize=(12, 6))

# 遍历每个事件类型,绘制对应折线
for event_type in event_year_count.columns:
    plt.plot(
        event_year_count.index,
        event_year_count[event_type],
        marker="o",  # 可选:添加数据点标记增强可读性
        label=event_type
    )

# 添加图表元素
plt.title("各事件类型年度发生次数趋势", fontsize=14)
plt.xlabel("年份", fontsize=12)
plt.ylabel("发生次数", fontsize=12)
plt.legend(title="事件类型", bbox_to_anchor=(1.05, 1), loc="upper left")  # 图例放在右侧避免遮挡
plt.grid(alpha=0.3)  # 添加浅色网格线
plt.tight_layout()  # 自动调整布局防止元素重叠

# 显示或保存图表
plt.show()
# plt.savefig("event_trend.png", dpi=300)  # 如需保存高清图可启用此行

方法二:用Seaborn简化绘制(更简洁)

Seaborn需要先将数据转成长格式:

import seaborn as sns

# 将宽格式数据转为长格式
long_df = event_year_count.reset_index().melt(
    id_vars="YEAR",
    var_name="EVENT_TYPE",
    value_name="COUNT"
)

# 绘制多折线图
plt.figure(figsize=(12, 6))
sns.lineplot(
    data=long_df,
    x="YEAR",
    y="COUNT",
    hue="EVENT_TYPE",
    marker="o"
)

# 添加图表元素
plt.title("各事件类型年度发生次数趋势", fontsize=14)
plt.xlabel("年份", fontsize=12)
plt.ylabel("发生次数", fontsize=12)
plt.legend(title="事件类型", bbox_to_anchor=(1.05, 1), loc="upper left")
plt.grid(alpha=0.3)
plt.tight_layout()
plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 04:37:23