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

如何将plt.bar函数的结果存储到数组中?

如何将plt.bar的结果存储到数组

嘿,当然可以!plt.bar()函数本身就会返回一个BarContainer对象,你可以直接把它赋值给变量,之后还能从中提取条形的各种属性(比如高度、位置、颜色等)。

基础存储示例

先看最直接的存储方式,把plt.bar()的返回值存到变量里:

import matplotlib.pyplot as plt

a = [1,2,3]
b = [21321,5345,654457]
height = list(b)

# 存储plt.bar的结果到a_b
a_b = plt.bar(a, height=height)

这里的a_b就是包含所有条形元素的BarContainer对象,你可以把它看作是一个装着每个条形(Rectangle实例)的容器。

提取具体数值到数组

如果想要把条形的具体属性(比如高度、x坐标)提取成数组,可以遍历这个容器:

# 提取所有条形的高度到数组
bar_heights = [bar.get_height() for bar in a_b]
print(bar_heights)  # 输出: [21321, 5345, 654457]

# 提取所有条形的x位置到数组
bar_x_positions = [bar.get_x() for bar in a_b]
print(bar_x_positions)  # 输出: [0.8, 1.8, 2.8](默认条形宽度是0.8,所以x位置是原a值减0.2)

补充说明

  • BarContainer对象还支持通过a_b.patches直接访问所有的Rectangle实例,和遍历a_b效果完全一致。
  • 如果后续对条形做了修改(比如调整高度、颜色),通过get_height()这类方法获取的是修改后的数值,不是初始传入的height值哦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:32:07