要在刻度标签中使用特定的十进制格式,请使用 FormatStrFormatter 类。此类采用指定所需格式的字符串作为参数。例如:
<code class="python">from matplotlib.ticker import FormatStrFormatter fig, ax = plt.subplots() ax.yaxis.set_major_formatter(FormatStrFormatter('%.2f'))</code>
在此示例中,格式字符串“%.2f”指定刻度标签应具有两位小数。有关更多格式化选项,请参阅 Matplotlib 文档。
或者,将 ScalarFormatter 类与 useOffset 和 useLocale 参数一起使用。 useOffset 禁用科学记数法,而 useLocale 使用系统的区域设置来确定格式样式(例如,小数分隔符、千位分隔符)。
<code class="python">fig, ax = plt.subplots() # Disable scientific notation ax.yaxis.set_major_formatter(ScalarFormatter(useOffset=False, useLocale=False)) # Specify decimal places ax.yaxis.set_major_locator(MultipleLocator(0.5))</code>
完全删除小数位,将格式字符串设置为“%d”。这将显示没有任何小数部分的整数:
<code class="python">from matplotlib.ticker import StrMethodFormatter ax.yaxis.set_major_formatter(StrMethodFormatter('{x:.0f}'))</code>
以上是如何控制Matplotlib中浮动刻度标签的格式?的详细内容。更多信息请关注PHP中文网其他相关文章!