gpt4 book ai didi

python - matplotlib 中的正号刻度标签

转载 作者:行者123 更新时间:2023-12-01 00:45:35 25 4
gpt4 key购买 nike

如何在 matplotlib 子图中的 y 刻度标签前面获得正 + 号? enter image description here

最佳答案

快速而肮脏(我想说方法的名称是不言自明的,不是吗?)

ax = plt.gca()
ylabels = ax.get_ylabels()
for ylabel in ylabels: ylabel.set_text('+'+ylabel.get_text())
ax.set_ylabels(ylabels)

更加犹太洁食

import matplotlib.ticker as ticker
...
fig, ax = plt.subplots()
ax.yaxis.set_major_formatter(ticker.FormatStrFormatter("%+g"))
plt.plot(...)
...

第二部分是使用 https://matplotlib.org/gallery/ticks_and_spines/tick-formatters.html 编写的作为引用。

<小时/>

附录

OP 在评论中询问“……我该怎么做才能避免 0 前面出现 + 号?”

可能的解决方案是

...
bare0 = lambda y, pos: ('%+g' if y>0 else '%g')%y
ax.yaxis.set_major_formatter(ticker.FuncFormatter(bare0))
...

参见https://matplotlib.org/api/ticker_api.html#matplotlib.ticker.FuncFormatter了解详情。

关于python - matplotlib 中的正号刻度标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57003343/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com