添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
坚韧的丝瓜  ·  python - Jquery and ...·  1 年前    · 
近视的花卷  ·  OpenSslCryptographicEx ...·  1 年前    · 
坏坏的黑框眼镜  ·  用于Beaglebone Black ...·  2 年前    · 

@

1. pyqtgraph 如果setLogMode为true 显示的是科学计数

有的时候我们并不想显示科学计数,不直观。
如果数值不是特别大,还是直接显示数值比较直观。

2. pyqtgraph中AxisItem.py 生成log坐标字符串处理方法

3. 通过重写AxisItem类中的logTickStrings方法来修改坐标轴显示的数值

4. TestCode

import numpy as np
import pyqtgraph as pg
class LogStringAxis(pg.AxisItem):
    def logTickStrings(self, values, scale, spacing):
        estrings = ["%0.1f" % x for x in 10**np.array(values).astype(float)]
        return estrings
win = pg.GraphicsWindow()
logStringAxis = LogStringAxis(orientation='bottom')
plot = win.addPlot(axisItems={'bottom': logStringAxis})
plot.setLogMode(True, False)
x1 = np.linspace(0, 20000, 500)
y1 = np.linspace(0, 1, 500)
curve = plot.plot(x1, y1)
if __name__ == '__main__':
    import sys
    if sys.flags.interactive != 1 or not hasattr(QtCore, 'PYQT_VERSION'):
        pg.QtGui.QApplication.exec_()

5. 参考文档

  • 关于python:在matplotlib.pyplot中防止科学计数法
  • Show string values on x-axis in pyqtgraph
  •