# 使用ScalarFormat标记格式 该示例显示了ScalarFormatter与不同设置的使用。 例子1:默认 例子2:没有图形偏移 例子3:使用Mathtext ```python import matplotlib.pyplot as plt import numpy as np from matplotlib.ticker import ScalarFormatter ``` 例子1: ```python x = np.arange(0, 1, .01) fig, [[ax1, ax2], [ax3, ax4]] = plt.subplots(2, 2, figsize=(6, 6)) fig.text(0.5, 0.975, 'The new formatter, default settings', horizontalalignment='center', verticalalignment='top') ax1.plot(x * 1e5 + 1e10, x * 1e-10 + 1e-5) ax1.xaxis.set_major_formatter(ScalarFormatter()) ax1.yaxis.set_major_formatter(ScalarFormatter()) ax2.plot(x * 1e5, x * 1e-4) ax2.xaxis.set_major_formatter(ScalarFormatter()) ax2.yaxis.set_major_formatter(ScalarFormatter()) ax3.plot(-x * 1e5 - 1e10, -x * 1e-5 - 1e-10) ax3.xaxis.set_major_formatter(ScalarFormatter()) ax3.yaxis.set_major_formatter(ScalarFormatter()) ax4.plot(-x * 1e5, -x * 1e-4) ax4.xaxis.set_major_formatter(ScalarFormatter()) ax4.yaxis.set_major_formatter(ScalarFormatter()) fig.subplots_adjust(wspace=0.7, hspace=0.6) ``` ![使用ScalarFormat标记格式示例](https://matplotlib.org/_images/sphx_glr_scalarformatter_001.png) 例子2: ```python x = np.arange(0, 1, .01) fig, [[ax1, ax2], [ax3, ax4]] = plt.subplots(2, 2, figsize=(6, 6)) fig.text(0.5, 0.975, 'The new formatter, no numerical offset', horizontalalignment='center', verticalalignment='top') ax1.plot(x * 1e5 + 1e10, x * 1e-10 + 1e-5) ax1.xaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax1.yaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax2.plot(x * 1e5, x * 1e-4) ax2.xaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax2.yaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax3.plot(-x * 1e5 - 1e10, -x * 1e-5 - 1e-10) ax3.xaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax3.yaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax4.plot(-x * 1e5, -x * 1e-4) ax4.xaxis.set_major_formatter(ScalarFormatter(useOffset=False)) ax4.yaxis.set_major_formatter(ScalarFormatter(useOffset=False)) fig.subplots_adjust(wspace=0.7, hspace=0.6) ``` ![使用ScalarFormat标记格式示例2](https://matplotlib.org/_images/sphx_glr_scalarformatter_002.png) 例子3: ```python x = np.arange(0, 1, .01) fig, [[ax1, ax2], [ax3, ax4]] = plt.subplots(2, 2, figsize=(6, 6)) fig.text(0.5, 0.975, 'The new formatter, with mathtext', horizontalalignment='center', verticalalignment='top') ax1.plot(x * 1e5 + 1e10, x * 1e-10 + 1e-5) ax1.xaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax1.yaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax2.plot(x * 1e5, x * 1e-4) ax2.xaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax2.yaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax3.plot(-x * 1e5 - 1e10, -x * 1e-5 - 1e-10) ax3.xaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax3.yaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax4.plot(-x * 1e5, -x * 1e-4) ax4.xaxis.set_major_formatter(ScalarFormatter(useMathText=True)) ax4.yaxis.set_major_formatter(ScalarFormatter(useMathText=True)) fig.subplots_adjust(wspace=0.7, hspace=0.6) plt.show() ``` ![使用ScalarFormat标记格式示例3](https://matplotlib.org/_images/sphx_glr_scalarformatter_003.png) ## 下载这个示例 - [下载python源码: scalarformatter.py](https://matplotlib.org/_downloads/scalarformatter.py) - [下载Jupyter notebook: scalarformatter.ipynb](https://matplotlib.org/_downloads/scalarformatter.ipynb)