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

Python如何实现传入国家名即可生成4张图表的自定义绘图函数

自定义批量绘图函数实现思路

核心逻辑是把重复的固定流程封装到函数内部,仅把会变化的「国家名称」作为对外暴露的入参,消除重复代码。

具体实现步骤

  • 先把4份固定的可视化数据集viz1~viz4和对应的画布编号整理成可迭代的配置集合,避免重复写4次结构完全一致的绘图语句
  • 定义自定义函数,仅设置1个入参用于接收国家名称
  • 在函数内部遍历配置集合,依次完成画布创建、单图绘制的流程即可
  • 可根据需求选择是否在函数末尾加plt.show()统一展示图表,或者返回生成的画布对象方便后续调整、保存

参考实现代码

import matplotlib.pyplot as plt

# 注:plotCT为你已实现的单图绘制函数,viz1~viz4为提前加载完成的4份可视化数据源
def plot_all_country_charts(country_name: str):
    # 按绘图顺序绑定画布ID和对应的数据集
    chart_configs = [
        (1, viz1),
        (2, viz2),
        (3, viz3),
        (4, viz4)
    ]
    for fig_id, viz_data in chart_configs:
        plt.figure(fig_id)
        plotCT(viz_data, country_name)
    
    # 按需开启:一次性渲染展示所有图表
    # plt.show()

# 调用方式:仅需传入国家名称即可生成4张对应图表
plot_all_country_charts('Czechia')

可选优化方向

  • 如果不希望新的绘图覆盖之前生成的画布,可以去掉固定的画布ID,每次循环时直接创建独立画布对象,无需手动编号
  • 如果后续需要给不同图表增加独立标题、自定义尺寸、自动保存等能力,只需要在chart_configs里追加对应的配置参数即可,核心循环逻辑不需要改动
  • 如果需要批量生成多个国家的全套图表,只需要在外层遍历国家名称列表,循环调用该函数即可,无需重复编写绘图代码

内容的提问来源于stack exchange,提问作者Ng.Alina

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 09:57:27