用计算值替换matplotlib刻度标签的正确方法是什么?

用计算值替换matplotlib刻度标签的正确方法是什么?,第1张

用计算值替换matplotlib刻度标签的正确方法是什么?

Formatter
课。除非您在刻度上加上文字,否则几乎永远不要直接使用
set_xticklabels
set_yticklabels
。这样可以完全将剔号标签与数据分离。如果您调整视图限制,则刻度标签将保持不变。

在您的情况下,已经存在用于此目的的格式化程序:

fig, ax = plt.subplots()ax.loglog(np.logspace(0, 5), np.logspace(0, 5)**2)ax.xaxis.set_major_formatter(matplotlib.ticker.LogFormatterExponent())

matplotlib.ticker.LogFormatterExponent

doc

通常可以使用

FuncFormatter
。有关如何使用的示例
FuncFomatter
请参见matplotlib:更改yaxis刻度标签,这是许多围绕SO浮动的示例之一。

一个简洁的示例,它从注释中的JoeKington完全摘录了您想要的内容:

ax.xaxis.set_major_formatter(   FuncFormatter(lambda x, pos: '{:0.1f}'.format(log10(x))))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655391.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存