自定义刻度器#

matplotlib.ticker 模块中定义了许多预设刻度器,但它主要是为了可扩展性而设计的,也就是说,它支持用户自定义刻度。

在本示例中,使用用户定义的函数来格式化 Y 轴上的数百万美元刻度。

import matplotlib.pyplot as plt


def millions(x, pos):
    """The two arguments are the value and tick position."""
    return f'${x*1e-6:1.1f}M'


fig, ax = plt.subplots()
# set_major_formatter internally creates a FuncFormatter from the callable.
ax.yaxis.set_major_formatter(millions)
money = [1.5e5, 2.5e6, 5.5e6, 2.0e7]
ax.bar(['Bill', 'Fred', 'Mary', 'Sue'], money)
plt.show()
custom ticker1

参考

本示例展示了以下函数、方法、类和模块的使用情况

Sphinx-Gallery 生成的图库