python - 如何强制 matplotlib 写出 x 轴标签的完整形式,避免使用科学记数法?

标签 python matplotlib

我使用 matplotlib.pyplot 创建了一个简单的 hexbin 图。我没有更改任何默认设置。我的 x 轴信息范围从 2003 到 2009,而 y 值范围从 15 到 35。matplotlib 没有写出 2003、2004 等,而是将其折叠为 0、1、2、... + 2.003e+03 .有没有一种简单的方法可以强制 matplotlib 写出完整的数字?

谢谢,
马克 C.

最佳答案

我想你可以使用 xticks function设置字符串标签:

nums = arange(2003, 2010)
xticks(nums, (str(n) for n in nums))

编辑:这是一个更好的方法:

gca().xaxis.set_major_formatter(FormatStrFormatter('%d'))

或者类似的东西,无论如何。 (在旧版本的 Matplotlib 中,该方法称为 setMajorFormatter。)

关于python - 如何强制 matplotlib 写出 x 轴标签的完整形式,避免使用科学记数法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3274200/

相关文章:

python - 线图不显示轴中的所有日期

python - 使用 matplotlib 并排绘制图像

python - 制作unicode转义码的更有效方法

python - 如何使用 Python 扩展我的 facebook access_token?

python - 为什么对 ndarray 进行切片会 reshape 它的形状?

python - matplotlib 中的 3D 离散热图

python - Seaborn 图例与 matplotlib AxesSubplot 之间的交互

python - 需要帮助在不使用 lambda 的情况下重写 Python 函数

python - django使用分页时出错

python - 计算合并排序中的反转次数