You need to enable JavaScript to run this app. 如何使用Matplotlib绘制多列指标的3D分组投影柱状图
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Matplotlib绘制多列指标的3D分组投影柱状图

3D柱状图功能调整实现

相邻柱形排布与图例添加

针对同坐标下三个指标的并列展示需求,按以下逻辑调整:

  • 给三个指标配置差异化固定颜色:A指标保留原有水蓝色,B指标用橙色,C指标用深红色,保证视觉可区分
  • 沿X轴方向给三个指标做等距小幅偏移,配合调整柱体的X/Y方向尺寸,让三个柱在原(R, Users)坐标点处紧密相邻、无重叠遮挡
  • 每次绘制柱体时传入对应指标的名称标签,最后调用图例渲染函数自动生成匹配颜色的图例

坐标轴离散刻度固定

为避免Matplotlib自动生成无数据对应的冗余刻度:

  • 手动将X轴刻度设置为数据集中R列的实际离散值[2, 4, 6, 8]
  • 手动将Y轴刻度设置为数据集中Users列的实际离散值[80, 400, 1000]
  • 关闭自动刻度补全逻辑,坐标轴仅展示上述指定的离散值

调整后完整可运行代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

columns = ['R','Users','A','B','C']

df=pd.DataFrame({'R':[2,2,2,4,4,4,6,6,6,8,8],
              'Users':[80,400,1000,80,400,1000,80,400,1000,80,400],
              'A':[ 0.05381,0.071907,0.08767,0.04493,0.051825,0.05295,0.05285,0.0804,0.0967,0.09864,0.1097],
             'B':[0.04287,0.83652,5.49683,0.02604,.045599,2.80836,0.02678,0.32621,1.41399,0.19025,0.2111],
                'C':[0.02192,0.16217,0.71645, 0.25314,5.12239,38.92758,1.60807,262.4874,8493,11.6025,6288]},
                 columns=columns)

fig = plt.figure(figsize=(10,7))
ax = plt.axes(projection="3d")

# 定义三个指标的绘制配置:颜色、X轴偏移量、图例标签
indicator_configs = [
    ("A", "aqua", -0.5, "指标A"),
    ("B", "orange", 0, "指标B"),
    ("C", "crimson", 0.5, "指标C")
]
# 统一柱体尺寸,保证相邻位置柱体不重叠
x_size = 0.45
y_size = 120
z_base = [0] * len(df)

for col_name, color, x_offset, label in indicator_configs:
    # 计算每个指标对应的X轴位置(原R值加固定偏移)
    adjusted_x_pos = df["R"] + x_offset
    ax.bar3d(
        adjusted_x_pos, 
        df["Users"], 
        z_base, 
        x_size, 
        y_size, 
        df[col_name], 
        color=color,
        label=label
    )

# 固定坐标轴为离散实际值,关闭自动补全刻度
ax.set_xticks([2,4,6,8])
ax.set_yticks([80,400,1000])
# 添加轴标签与图例
ax.set_xlabel("R参数值")
ax.set_ylabel("用户规模")
ax.set_zlabel("指标数值")
ax.legend()

plt.tight_layout()
plt.show()

效果说明

  • 每个原(R, Users)坐标点处会横向排列三个不同颜色的柱体,分别对应A、B、C三个指标
  • 坐标轴不会自动生成额外刻度,仅展示数据集中实际存在的R值与用户规模值
  • 生成的图例与柱体颜色一一对应,可快速区分不同指标

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.04 12:54:04