1# -*- coding: utf-8 -*-
2"""
3Example beeswarm / bar chart
4"""
5import initExample ## Add path to library (just for examples; you do not need this)
6
7import pyqtgraph as pg
8from pyqtgraph.Qt import QtCore, QtGui
9import numpy as np
10
11win = pg.plot()
12win.setWindowTitle('pyqtgraph example: beeswarm')
13
14data = np.random.normal(size=(4,20))
15data[0] += 5
16data[1] += 7
17data[2] += 5
18data[3] = 10 + data[3] * 2
19
20## Make bar graph
21#bar = pg.BarGraphItem(x=range(4), height=data.mean(axis=1), width=0.5, brush=0.4)
22#win.addItem(bar)
23
24## add scatter plots on top
25for i in range(4):
26    xvals = pg.pseudoScatter(data[i], spacing=0.4, bidir=True) * 0.2
27    win.plot(x=xvals+i, y=data[i], pen=None, symbol='o', symbolBrush=pg.intColor(i,6,maxValue=128))
28
29## Make error bars
30err = pg.ErrorBarItem(x=np.arange(4), y=data.mean(axis=1), height=data.std(axis=1), beam=0.5, pen={'color':'w', 'width':2})
31win.addItem(err)
32
33
34if __name__ == '__main__':
35    pg.exec()
36