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

如何修改Windrose风玫瑰图中浮点数图例的格式?

控制风玫瑰图图例的浮点数小数位数

你使用Windrose官方示例代码绘制风玫瑰图时,图例默认显示的浮点数小数位数不符合需求,可通过以下方式自定义控制:

原始示例代码

from windrose import WindroseAxes
from matplotlib import pyplot as plt
import numpy as np

ws = np.random.random(500) * 6
wd = np.random.random(500) * 360
ax = WindroseAxes.from_ax()
ax.bar(wd, ws, normed=True, opening=0.8, edgecolor='white')
ax.set_legend()
plt.show()

修改后的代码(自定义小数位数)

from windrose import WindroseAxes
from matplotlib import pyplot as plt
import numpy as np

ws = np.random.random(500) * 6
wd = np.random.random(500) * 360
ax = WindroseAxes.from_ax()
ax.bar(wd, ws, normed=True, opening=0.8, edgecolor='white')

# 获取图例并格式化标签小数位数
legend = ax.set_legend()
# 遍历所有图例文本,将数值格式化为1位小数(可修改.1f为.2f等调整位数)
for text in legend.get_texts():
    try:
        num = float(text.get_text())
        text.set_text(f"{num:.1f}")
    except ValueError:
        # 处理非数值标签(如果有的话)
        pass

plt.show()

说明

  • 代码中{num:.1f}表示保留1位小数,若需要2位小数则改为{num:.2f},以此类推。
  • 加入try-except块是为了避免非数值标签出现转换错误,确保代码鲁棒性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 16:59:55