From 92d3b3fb94c09755c737979fedd4eb18e0707901 Mon Sep 17 00:00:00 2001 From: Luke Campagnola Date: Sun, 2 Feb 2014 10:45:32 -0500 Subject: [PATCH] cleanups --- examples/SimplePlot.py | 8 +------- pyqtgraph/graphicsItems/ArrowItem.py | 23 +++++++++++------------ 2 files changed, 12 insertions(+), 19 deletions(-) diff --git a/examples/SimplePlot.py b/examples/SimplePlot.py index b4dba1ff..92106661 100644 --- a/examples/SimplePlot.py +++ b/examples/SimplePlot.py @@ -1,16 +1,10 @@ import initExample ## Add path to library (just for examples; you do not need this) -from os.path import * -from pyqtgraph.Qt import QtGui, QtCore import pyqtgraph as pg import numpy as np plt = pg.plot(np.random.normal(size=100), title="Simplest possible plotting example") -plt.getAxis('bottom').setTicks([[(x*20, str(x*20)) for x in range(6)]]) -## Start Qt event loop unless running in interactive mode or using pyside. -ex = pg.exporters.SVGExporter.SVGExporter(plt.plotItem.scene()) -ex.export(join(dirname(__file__), 'test.svg')) if __name__ == '__main__': import sys - if sys.flags.interactive != 1 or not hasattr(QtCore, 'PYQT_VERSION'): + if sys.flags.interactive != 1 or not hasattr(pg.QtCore, 'PYQT_VERSION'): pg.QtGui.QApplication.exec_() diff --git a/pyqtgraph/graphicsItems/ArrowItem.py b/pyqtgraph/graphicsItems/ArrowItem.py index 275f9250..c98ba127 100644 --- a/pyqtgraph/graphicsItems/ArrowItem.py +++ b/pyqtgraph/graphicsItems/ArrowItem.py @@ -16,12 +16,14 @@ class ArrowItem(QtGui.QGraphicsPathItem): Arrows can be initialized with any keyword arguments accepted by the setStyle() method. """ + self.opts = {} QtGui.QGraphicsPathItem.__init__(self, opts.get('parent', None)) + if 'size' in opts: opts['headLen'] = opts['size'] if 'width' in opts: opts['headWidth'] = opts['width'] - defOpts = { + defaultOpts = { 'pxMode': True, 'angle': -150, ## If the angle is 0, the arrow points left 'pos': (0,0), @@ -33,12 +35,9 @@ class ArrowItem(QtGui.QGraphicsPathItem): 'pen': (200,200,200), 'brush': (50,50,200), } - defOpts.update(opts) + defaultOpts.update(opts) - self.setStyle(**defOpts) - - self.setPen(fn.mkPen(defOpts['pen'])) - self.setBrush(fn.mkBrush(defOpts['brush'])) + self.setStyle(**defaultOpts) self.rotate(self.opts['angle']) self.moveBy(*self.opts['pos']) @@ -60,9 +59,9 @@ class ArrowItem(QtGui.QGraphicsPathItem): specified, ot overrides headWidth. default=25 baseAngle Angle of the base of the arrow head. Default is 0, which means that the base of the arrow head - is perpendicular to the arrow shaft. + is perpendicular to the arrow tail. tailLen Length of the arrow tail, measured from the base - of the arrow head to the tip of the tail. If + of the arrow head to the end of the tail. If this value is None, no tail will be drawn. default=None tailWidth Width of the tail. default=3 @@ -70,15 +69,15 @@ class ArrowItem(QtGui.QGraphicsPathItem): brush The brush used to fill the arrow. ================= ================================================= """ - try: - self.opts.update(opts) - except AttributeError: - self.opts = opts + self.opts.update(opts) opt = dict([(k,self.opts[k]) for k in ['headLen', 'tipAngle', 'baseAngle', 'tailLen', 'tailWidth']]) self.path = fn.makeArrowPath(**opt) self.setPath(self.path) + self.setPen(fn.mkPen(self.opts['pen'])) + self.setBrush(fn.mkBrush(self.opts['brush'])) + if self.opts['pxMode']: self.setFlags(self.flags() | self.ItemIgnoresTransformations) else: