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

如何判断Seaborn绘制的柱状图是否有柱子并按需保存PNG

判断Seaborn柱状图是否存在柱子并选择性保存图片

你可以通过检查Seaborn barplot返回的Axes对象的patches属性来判断是否生成了柱子——这个属性存储了所有柱子对应的矩形元素。如果patches的长度大于0,说明有柱子存在。

完整代码示例:

import seaborn as sns
import matplotlib.pyplot as plt

fig = plt.figure(figsize=(20, 6))
gr = sns.barplot(x="ReleaseMonth", y="Rating", data=df)
# 判断是否有柱子生成
if len(gr.patches) > 0:
    plt.savefig("fig1.png")
plt.close()  # 可选:关闭图形释放资源

补充说明:

  • gr.patches是一个列表,每个元素对应一个柱子的matplotlib.patches.Rectangle对象
  • 当DataFrame中没有有效数据(比如x/y列无有效值、分组后无数据)时,gr.patches会是空列表,此时不会执行保存操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 11:19:52