pyqtgraph/CHANGELOG

460 lines
21 KiB
Plaintext
Raw Normal View History

pyqtgraph-0.11.0 (in development)
API / behavior changes:
- ArrowItem's `angle` option now rotates the arrow without affecting its coordinate system.
The result is visually the same, but children of ArrowItem are no longer rotated
(this allows screen-aligned text to be attached more easily).
To mimic the old behavior, use ArrowItem.rotate() instead of the `angle` argument.
2018-02-14 17:06:35 +00:00
- Deprecated graphicsWindow classes; these have been unnecessary for many years because
widgets can be placed into a new window just by calling show().
2016-11-05 05:47:56 +00:00
pyqtgraph-0.10.0
2016-09-14 15:57:20 +00:00
New Features:
- PyQt5 support
- Options for interpreting image data as either row-major or col-major
- InfiniteLine and LinearRegionItem can have attached labels
- DockArea:
- Dock titles can be changed after creation
- Added Dock.sigClosed
- Added TextItem.setColor()
- FillBetweenItem supports finite-connected curves (those that exclude nan/inf)
API / behavior changes:
- Improved ImageItem performance for some data types by scaling LUT instead of image
- Change the defaut color kwarg to None in TextItem.setText() to avoid changing
the color every time the text is changed.
- FFT plots skip first sample if x-axis uses log scaling
- Multiprocessing system adds bytes and unicode to the default list of no-proxy data types
2016-09-22 00:40:40 +00:00
- Version number scheme changed to be PEP440-compliant (only affects installations from non-
release git commits)
Bugfixes:
2016-09-14 15:57:20 +00:00
- Fix for numpy API change that caused casting errors for inplace operations
- Fixed git version string generation on python3
- Fixed setting default values for out-of-bound points in pg.interpolateArray
- Fixed plot downsampling bug on python 3
2016-09-14 15:57:20 +00:00
- Fixed invalid slice in ImageItem.getHistogram
- DockArea:
- Fixed adding Docks to DockArea after all Docks have been removed
- Fixed DockArea save/restoreState when area is empty
- Properly remove select box when export dialog is closed using window decorations
2016-09-14 15:57:20 +00:00
- Remove all modifications to python builtins
- Better Python 2.6 compatibility
- Fix SpinBox decimals
2016-09-14 15:57:20 +00:00
- Fixed numerous issues with ImageItem automatic downsampling
- Fixed PlotItem average curves using incorrect stepMode
- Fixed TableWidget eating key events
- Prevent redundant updating of flowchart nodes with multiple inputs
- Ignore wheel events in GraphicsView if mouse interaction is disabled
- Correctly pass calls to QWidget.close() up the inheritance chain
- ColorMap forces color inputs to be sorted
- Fixed memory mapping for RemoteGraphicsView in OSX
- Fixed QPropertyAnimation str/bytes handling
- Fixed __version__ string update when using `setup.py install` with newer setuptools
Maintenance:
2016-09-14 15:57:20 +00:00
- Image comparison system for unit testing plus tests for several graphics items
- Travis CI and coveralls/codecov support
- Add examples to unit tests
2016-09-14 15:57:20 +00:00
2014-12-24 20:44:47 +00:00
pyqtgraph-0.9.10
Fixed installation issues with more recent pip versions.
2014-12-24 00:13:54 +00:00
pyqtgraph-0.9.9
API / behavior changes:
- Dynamic import system abandoned; pg now uses static imports throughout.
- Flowcharts and exporters have new pluggin systems
- Version strings:
- __init__.py in git repo now contains latest release version string
(previously, only packaged releases had version strings).
- installing from git checkout that does not correspond to a release
commit will result in a more descriptive version string.
- Speed improvements in functions.makeARGB
- ImageItem is faster by avoiding makeQImage(transpose=True)
2013-12-28 03:48:44 +00:00
- ComboBox will raise error when adding multiple items of the same name
- ArrowItem.setStyle now updates style options rather than replacing them
- Renamed GraphicsView signals to avoid collision with ViewBox signals that
are wrapped in PlotWidget: sigRangeChanged => sigDeviceRangeChanged and
sigTransformChanged => sigDeviceTransformChanged.
- GLViewWidget.itemsAt() now measures y from top of widget to match mouse
event position.
- Made setPen() methods consistent throughout the package
- Fix in GLScatterPlotItem requires that points will appear slightly more opaque
(so you may need to adjust to lower alpha to achieve the same results)
New Features:
- Added ViewBox.setLimits() method
- Adde ImageItem downsampling
- New HDF5 example for working with very large datasets
- Removed all dependency on scipy
- Added Qt.loadUiType function for PySide
- Simplified Profilers; can be activated with environmental variables
- Added Dock.raiseDock() method
2013-12-28 03:48:44 +00:00
- ComboBox updates:
- Essentially a graphical interface to dict; all items have text and value
- Assigns previously-selected text after list is cleared and repopulated
- Get, set current value
- Flowchart updates
- Added Flowchart.sigChartChanged
- Custom nodes may now be registered in sub-menu trees
- ImageItem.getHistogram is more clever about constructing histograms
- Added FillBetweenItem.setCurves()
- MultiPlotWidget now has setMinimumPlotHeight method and displays scroll bar
when plots do not fit inside the widget.
- Added BarGraphItem.shape() to allow better mouse interaction
- Added MeshData.cylinder
2014-02-28 14:54:12 +00:00
- Added ViewBox.setBackgroundColor() and GLViewWidget.setBackgroundColor()
- Utilities / debugging tools
- Mutex used for tracing deadlocks
- Color output on terminal
- Multiprocess debugging colors messages by process
- Stdout filter that colors text by thread
- PeriodicTrace used to report deadlocks
2014-04-08 19:29:31 +00:00
- Added AxisItem.setStyle()
- Added configurable formatting for TableWidget
- Added 'stepMode' argument to PlotDataItem()
2014-04-28 11:36:59 +00:00
- Added ViewBox.invertX()
- Docks now have optional close button
2014-05-10 18:19:27 +00:00
- Added InfiniteLine.setHoverPen
2014-06-21 03:04:21 +00:00
- Added GLVolumeItem.setData
- Added PolyLineROI.setPoints, clearPoints, saveState, setState
2014-06-27 14:55:55 +00:00
- Added ErrorBarItem.setData
Bugfixes:
- PlotCurveItem now has correct clicking behavior--clicks within a few px
of the line will trigger a signal.
- Fixes related to CSV exporter:
- CSV headers include data names, if available
- Exporter correctly handles items with no data
- pg.plot() avoids creating empty data item
- removed call to reduce() from exporter; not available in python 3
- Gave .name() methods to PlotDataItem, PlotCurveItem, and ScatterPlotItem
- fixed ImageItem handling of rgb images
- fixed makeARGB re-ordering of color channels
- fixed unicode usage in AxisItem tick strings
- fixed PlotCurveItem generating exceptions when data has length=0
- fixed ImageView.setImage only working once
- PolyLineROI.setPen() now changes the pen of its segments as well
- Prevent divide-by-zero in AxisItem
- Major speedup when using ScatterPlotItem in pxMode
- PlotCurveItem ignores clip-to-view when auto range is enabled
- FillBetweenItem now forces PlotCurveItem to generate path
- Fixed import errors and py3 issues in MultiPlotWidget
- Isosurface works for arrays with shapes > 255
- Fixed ImageItem exception building histogram when image has only one value
- Fixed MeshData exception caused when vertexes have no matching faces
- Fixed GLViewWidget exception handler
2014-02-12 08:02:09 +00:00
- Fixed unicode support in Dock
2014-03-03 18:48:31 +00:00
- Fixed PySide crash caused by emitting signal from GraphicsObject.itemChange
- Fixed possible infinite loop from FiniteCache
- Allow images with NaN in ImageView
- MeshData can generate edges from face-indexed vertexes
- Fixed multiprocess deadlocks on windows
- Fixed GLGridItem.setSize
2014-03-25 17:15:29 +00:00
- Fixed parametertree.Parameter.sigValueChanging
- Fixed AxisItem.__init__(showValues=False)
2014-04-12 01:29:15 +00:00
- Fixed TableWidget append / sort issues
- Fixed AxisItem not resizing text area when setTicks() is used
- Removed a few cyclic references
- Fixed Parameter 'readonly' option for bool, color, and text parameter types
- Fixed alpha on GLScatterPlotItem spots (formerly maxed out at alpha=200)
- Fixed a few bugs causing exit crashes
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.8 2013-11-24
2013-11-24 01:27:14 +00:00
API / behavior changes:
- ViewBox will auto-range when ImageItem changes shape
- AxisItem:
- Smarter about deciding which ticks get text
- AxisItem.setScale(float) has the usual behavior, but .setScale(None)
is deprecated. Instead use:
AxisItem.enableAutoSIPrefix(bool) to enable/disable SI prefix scaling
- Removed inf/nan checking from PlotDataItem and PlotCurveItem; improved
performance
New Features:
- Support for dynamic downsampling and view clipping in PlotDataItem and
PlotItem
- Added 'connect' option to PlotDataItem and PlotCurveItem to affect which
line segments are drawn
- Support for FFT with non-uniform time sampling
- Added BarGraphItem
- OpenGL:
- Added export methods to GLViewWidget
- Wireframe meshes
- GLLinePLotItem gets antialiasing, accepts array of colors
- GLMeshItem accepts ShaderProgram or name of predefined program
- Added GLBarGraphItem
- LegendItem:
- User-draggable
- Allow custom ItemSamples
- Symbol support
- Support for removing items
- ScatterPlotWidget, ColorMapWidget, and DataFilterWidget are stable
- TableWidget:
- Made numerically sortable
- Added setEditable method
- AxisItem ability to truncate axis lines at the last tick
- arrayToQPath() added 'finite' connection mode which omits non-finite
values from connections
- pg.plot() and pg.PlotWidget() now accept background argument
- Allow QtProcess without local QApplication
- Support for dashing in mkPen()
- Added Dock.close()
- Added style options to flowchart connection lines
- Added parentChanged and viewChanged hooks to GraphicsItem
- Bidirectional pseudoScatter for beeswarm plots
- Added exit() function for working around PyQt exit crashes
- Added PolylineROI.getArrayRegion()
Bugfixes:
- Many Python 3 compatibility fixes
- AxisItem:
- Correctly handles scaling with values that are not power of 10
- Did not update grid line length when plot stretches
- Fixed unicode handling in AxisItem label
- ViewBox:
- Overhauled to fix issues with aspect locking
- ViewBox context menu elements are no longer deleted when using
flowchart with pyside
- Fixed view linking with inverted y axis
- Prevent auto-range disabling when dragging with one mouse axis diabled
- Ignore inf and nan when auto-ranging
- ParameterTree:
- fixed TextParameter editor disappearing after focus lost
- ListParameter: allow unhashable types as parameter values.
- Exporting:
- ImageExporter correctly handles QBrush with style=NoBrush
- SVGExporter text, gradients working correctly
- SVGExporter correctly handles coordinate corrections for groups with
mixed elements
- ImageView:
- Fixed auto-levelling when normalization options change
- Added autoHistogramRange argument to setImage
- ScatterPlotItem:
- Fixed crashes caused by ScatterPlotItem
- Fixed antialiasing
- arrayToQPath performance improved for python 3
- Fixed makeQImage on many platforms (notably, on newer PyQt APIs)
- Removed unnecessary scipy imports for faster import
- GraphItem reports pixel margins to improve auto-range
- Add backport ordereddict to repository; old OrderedDict class is removed
- Corrected behavior of GraphicsView.setBackground
- Fixed PySide bug listing image formats
- Fixed QString -> str conversions in flowchart
- Unicode file name support when exporting
- Fixed MatplotlibWidget + PySide
- Fixed 3D view updating after every scene change
- Fixed handling of non-native dtypes when optimizing with weave
- RemoteGraphicsView fixed for PyQt 4.10, Python 3
- Fixed GLLinePlotItem line width option
- HistogramLUTWidget obeys default background color
- ScaleBar complete rewrite
- GraphItem obeys antialiasing flag
- Workaround for PySide/QByteArray memory leak
- Fixed example --test on windows, python3
- Luke finished dissertation
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.7 2013-02-25
2013-11-24 01:27:14 +00:00
Bugfixes:
- ArrowItem auto range now works correctly
- Dock drag/drop fixed on PySide
- Made padding behavior consistent across ViewBox methods
- Fixed MeshData / python2.6 incompatibility
- Fixed ScatterPlotItem.setSize and .setPointData
- Workaround for PySide bug; GradientEditor fixed
- Prefer initially selecting PlotItem rather then ViewBox when exporting
- Fixed python3 import error with flowcharts
Cleaned up examples, made code editable from example loader
Minor documentation updates
Features:
- Added GraphItem class for displaying networks/trees
- Added ColorMap class for mapping linear gradients and generating lookup
tables
(Provides gradient editor functionality without the GUI)
- Added ColorMapWidget for complex user-defined color mapping
- Added ScatterPlotWidget for exploring relationships in multi-column
tables
- Added ErrorBarItem
- SVG and image exporters can now copy to clipboard
- PlotItem gets new methods: addLine, setLabels, and listDataItems
- AxisItem gets setTickFont method
- Added functions.arrayToQPath, shared between GraphItem and PlotCurveItem
- Added gradient editors to parametertree
- Expanded documentation, added beginning of Qt crash course
Bugfixes:
- Fixed auto-ranging bugs: ViewBox now properly handles pixel-padding
around data items
- ViewBox ignores bounds of zoom-rect when auto ranging
- Fixed AxisItem artifacts
- Fixed GraphicsItem.pixelVector caching bugs and simplified workaround for
fp-precision errors
- LinearRegionItem.hoverEvent obeys 'movable' flag
- Fixed PlotDataItem nan masking bugs
- Workaround for segmentation fault in QPainter.drawPixmapFragments
- multiprocess and RemoteGraphicsView work correctly in Windows.
- Expanded python 3 support
- Silenced weave errors by default
- Fixed " 'win' in sys.platform " occurrences matching 'darwin' (duh)
- Workaround for change in QImage API (PyQt 4.9.6)
- Fixed axis ordering bug in GLScatterPlotItem
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.6 2013-02-14
2013-11-24 01:27:14 +00:00
Features:
- Added GraphItem class for displaying networks/trees
- Added ColorMap class for mapping linear gradients and generating lookup
tables
(Provides gradient editor functionality without the GUI)
- Added ColorMapWidget for complex user-defined color mapping
- Added ScatterPlotWidget for exploring relationships in multi-column
tables
- Added ErrorBarItem
- SVG and image exporters can now copy to clipboard
- PlotItem gets new methods: addLine, setLabels, and listDataItems
- AxisItem gets setTickFont method
- Added functions.arrayToQPath, shared between GraphItem and PlotCurveItem
- Added gradient editors to parametertree
- Expanded documentation, added beginning of Qt crash course
Bugfixes:
- Fixed auto-ranging bugs: ViewBox now properly handles pixel-padding
around data items
- ViewBox ignores bounds of zoom-rect when auto ranging
- Fixed AxisItem artifacts
- Fixed GraphicsItem.pixelVector caching bugs and simplified workaround for
fp-precision errors
- LinearRegionItem.hoverEvent obeys 'movable' flag
- Fixed PlotDataItem nan masking bugs
- Workaround for segmentation fault in QPainter.drawPixmapFragments
- multiprocess and RemoteGraphicsView work correctly in Windows.
- Expanded python 3 support
- Silenced weave errors by default
- Fixed " 'win' in sys.platform " occurrences matching 'darwin' (duh)
- Workaround for change in QImage API (PyQt 4.9.6)
- Fixed axis ordering bug in GLScatterPlotItem
Plotting performance improvements:
- AxisItem shows fewer tick levels in some cases.
- Lots of boundingRect and dataBounds caching
(improves ViewBox auto-range performance, especially with multiple plots)
- GraphicsScene avoids testing for hover intersections with non-hoverable
items
(much less slowdown when moving mouse over plots)
Improved performance for remote plotting:
- reduced cost of transferring arrays between processes (pickle is too
slow)
- avoid unnecessary synchronous calls
Added RemoteSpeedTest example
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.5 2013-01-11
2013-11-24 01:27:14 +00:00
Plotting performance improvements:
- AxisItem shows fewer tick levels in some cases.
- Lots of boundingRect and dataBounds caching
(improves ViewBox auto-range performance, especially with multiple plots)
- GraphicsScene avoids testing for hover intersections with non-hoverable
items
(much less slowdown when moving mouse over plots)
Improved performance for remote plotting:
- reduced cost of transferring arrays between processes (pickle is too
slow)
- avoid unnecessary synchronous calls
Added RemoteSpeedTest example
Documentation:
- Added documentation on export system
- Added flowchart documentation and custom node example
Bugfixes:
- prevent PlotCurveItem drawing shadow when unnecessary
- deprecated flowchart.Node.__getattr__ -- causes too many problems.
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.4 2013-01-07
2013-11-24 01:27:14 +00:00
Documentation:
- Added documentation on export system
- Added flowchart documentation and custom node example
Bugfixes:
- prevent PlotCurveItem drawing shadow when unnecessary
- deprecated flowchart.Node.__getattr__ -- causes too many problems.
Bugfix: prevent adding invalid entry to sys.path when running examples
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.3 2012-12-29
2013-11-24 01:27:14 +00:00
Bugfix: prevent adding invalid entry to sys.path when running examples
Bugfixes:
- SVG export text elements use generic font-family as backup, corrected item
transformation issues
- Fixed RuntimeError caused when clearing item hierarchies from ViewBox
- Fixed example execution bug
Packaging maintenance:
- Added missing files to MANIFEST.in, fixed setup.py package detection
- Added debian control files for building source packages
- Fixed version numbering in doc, __init__.py
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.2 2012-12-29
2013-11-24 01:27:14 +00:00
Bugfixes:
- SVG export text elements use generic font-family as backup, corrected item
transformation issues
- Fixed RuntimeError caused when clearing item hierarchies from ViewBox
- Fixed example execution bug
Packaging maintenance:
- Added missing files to MANIFEST.in, fixed setup.py package detection
- Added debian control files for building source packages
- Fixed version numbering in doc, __init__.py
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.1 2012-12-27
2013-11-24 01:27:14 +00:00
Removed incorrect version numbers
Correction to setup.py - use install_requires to inform pip of dependencies.
Fixed doc version (again)
Added debian control files
bugfixes for new package structure
2013-11-24 15:16:45 +00:00
pyqtgraph-0.9.0 2012-12-27
2013-11-24 01:27:14 +00:00
* Initial release.