在 Matplotlib 图形的轴上显示小数位数和科学计数法


为了在 matplotlib 的轴上显示小数位数和科学记数法,我们可以使用标量格式化器,通过替换_set_format()  方法。

步骤

  • 使用 numpy 创建 x 和 y 数据点。

  • 使用 plot() 方法绘制 x 和 y。

  • 使用 gca() 方法,获取当前轴。

  • 将格式刻度值实例化为数字类,即ScalarFormatter

  • 使用 set_powerlimits((0, 0)) 方法,设置科学记数法的尺寸阈值。

  • 使用set_major_formatter() 方法,设置主要标记的格式。

  • 要显示图形,使用show() 方法。

示例

import numpy as np
from matplotlib.ticker import ScalarFormatter
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

class ScalarFormatterClass(ScalarFormatter):
   def _set_format(self):
      self.format = "%1.2f"

x = np.linspace(1, 10)
y = np.linspace(2,10)
y = x * y
plt.plot(x, y)
ax = plt.gca()
yScalarFormatter = ScalarFormatterClass(useMathText=True)
yScalarFormatter.set_powerlimits((0,0))
ax.yaxis.set_major_formatter(yScalarFormatter)
plt.show()

结果

更新于:08-05-2021

6K+ 浏览量

开启你的 职业生涯

完成课程并获得认证

开始学习
广告