小编tem*_*eff的帖子

我可以使用Python 2.7在matplotlib图的轴上显示小数位和科学记数法吗?

我正在使用python 2.7在pyqt程序中使用matplotlib绘制一些大数字.我的y轴范围从1e + 18到3e + 18(通常).我想看到每个刻度线以科学记数法显示值,并带有2位小数.例如2.35e + 18而不仅仅是2e + 18,因为2e + 18和3e + 18之间的值仍然只读取2e + 18的几个标记.这是一个问题的例子.

import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
x = np.linspace(0, 300, 20)
y = np.linspace(0,300, 20)
y = y*1e16
ax.plot(x,y)  
ax.get_xaxis().set_major_formatter(plt.LogFormatter(10,  labelOnlyBase=False))
ax.get_yaxis().set_major_formatter(plt.LogFormatter(10,  labelOnlyBase=False))
plt.show()
Run Code Online (Sandbox Code Playgroud)

python matplotlib significant-digits python-2.7 axis-labels

19
推荐指数
2
解决办法
5万
查看次数