37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
"""
|
|
In this example we draw two different kinds of histogram.
|
|
"""
|
|
import initExample ## Add path to library (just for examples; you do not need this)
|
|
|
|
import pyqtgraph as pg
|
|
from pyqtgraph.Qt import QtCore, QtGui
|
|
import numpy as np
|
|
|
|
win = pg.GraphicsWindow()
|
|
win.resize(800,350)
|
|
win.setWindowTitle('pyqtgraph example: Histogram')
|
|
plt1 = win.addPlot()
|
|
plt2 = win.addPlot()
|
|
|
|
## make interesting distribution of values
|
|
vals = np.hstack([np.random.normal(size=500), np.random.normal(size=260, loc=4)])
|
|
|
|
## compute standard histogram
|
|
y,x = np.histogram(vals, bins=np.linspace(-3, 8, 40))
|
|
|
|
## Using stepMode=True causes the plot to draw two lines for each sample.
|
|
## notice that len(x) == len(y)+1
|
|
plt1.plot(x, y, stepMode=True, fillLevel=0, brush=(0,0,255,150))
|
|
|
|
## Now draw all points as a nicely-spaced scatter plot
|
|
y = pg.pseudoScatter(vals, spacing=0.15)
|
|
#plt2.plot(vals, y, pen=None, symbol='o', symbolSize=5)
|
|
plt2.plot(vals, y, pen=None, symbol='o', symbolSize=5, symbolPen=(255,255,255,200), symbolBrush=(0,0,255,150))
|
|
|
|
## Start Qt event loop unless running in interactive mode or using pyside.
|
|
if __name__ == '__main__':
|
|
import sys
|
|
if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
|
|
QtGui.QApplication.instance().exec_()
|