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

如何在循环迭代时为每个子图绘制不同DataFrame的数据

解决方案

你可以按以下步骤修改代码,核心是先把7组待绘制的数据存入列表,再用计数器匹配每个可用子图对应的数据:

修改后的完整代码

import matplotlib.pyplot as plt
import pandas as pd # 已导入过可省略该行

# 按顺序存储7组待绘制的数据集
plot_datas = [df1.col1, df2.col1, df3.col1, df4.col1, df5.col1, df6.col1, df7.col1]
data_idx = 0 # 数据集索引计数器

fig, axes = plt.subplots(figsize=(10, 10), ncols=2, nrows=4)
for i in range(4):
    for j in range(2):
        if i<j:
            axes[i, j].axis('off')
        else:
            axes[i, j].hist(plot_datas[data_idx], bins=20, edgecolor='k')
            data_idx += 1 # 绘制完成后计数器递增,匹配下一组数据

核心修改点说明

  • 新增plot_datas列表,按你需要的展示顺序存放7组待绘制的列数据
  • 新增data_idx计数器,每次进入可绘图的子图区域时,读取对应索引的数据集
  • 把原来固定的df1.col1替换为动态读取的plot_datas[data_idx]即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 16:36:04