Commit Graph

65 Commits

Author SHA1 Message Date
Luke Campagnola
ca3fbe2ff9 Merged numerous updates from acq4:
* Added HDF5 exporter
* CSV exporter gets (x,y,y,y) export mode
* Updates to SVG, Matplotlib exporter
* Console can filter exceptions by string
* Added tick context menu to GradientEditorItem
* Added export feature to imageview
* Parameter trees:
    - Option to save only user-editable values
    - Option to set visible title of parameters separately from name
    - Added experimental ParameterSystem for handling large systems of
        interdependent parameters
    - Auto-select editable portion of spinbox when editing
* Added Vector.__abs__
* Added replacement garbage collector for avoiding crashes on multithreaded Qt
* Fixed "illegal instruction" caused by closing file handle 7 on OSX
* configfile now reloads QtCore objects, Point, ColorMap, numpy arrays
* Avoid triggering recursion issues in exception handler
* Various bugfies and performance enhancements
2014-08-07 08:41:30 -04:00
Luke Campagnola
f9c85dae42 Merge remote-tracking branch 'pyqtgraph/develop' into core 2014-08-06 10:11:21 -04:00
Luke Campagnola
c7f4a8fd39 Merge branch 'develop' into core 2014-04-15 15:11:19 -04:00
Luke Campagnola
f613d33c49 Merge branch 'develop' into pyqtgraph-core 2014-01-24 10:50:50 -05:00
Luke Campagnola
1dae1def22 Merge branch 'develop' into pyqtgraph-core 2013-12-23 11:16:39 -05:00
Luke Campagnola
757dc50447 Merge tag 'pyqtgraph-0.9.8' into pyqtgraph-core 2013-12-23 11:15:54 -05:00
Luke Campagnola
551ac7802f mp fixes 2013-02-13 11:43:22 -05:00
Luke Campagnola
025f2e5575 merged many new features from ACQ4 2013-02-10 17:45:16 -05:00
Luke Campagnola
17409bc9a6 Merge new fixes and features from acq4 2013-02-10 14:10:30 -05:00
Luke Campagnola
5053318348 Bugfixes:
- ViewBox ignore bounds on zoom box
- Fixed improper pixel size caching
- Fixed check for 'win' in sys.platform (matches 'darwin' as well)
2013-01-30 15:51:38 -05:00
Luke Campagnola
362a0dcd04 Fixes for Python3, PySide 2013-01-12 18:07:35 -05:00
Luke Campagnola
e234d90f02 Bugfixes:
- GraphicsItem.pixelVectors copies cached results before returning
  - Multiprocess fixes for Windows:
      - mmap/shm uses anonymous maps rather than tempfiles
      - avoid use of getppid and setpgrp
      - work around hmac authentication bug (use os.urandom to generate key)
2013-01-12 14:31:49 -05:00
Luke Campagnola
9a1d7d74cb Improved performance for remote plotting:
- reduced cost of transferring arrays between processes (pickle is too slow)
  - avoid unnecessary synchronous calls

Added RemoteSpeedTest example
2013-01-10 16:10:27 -05:00
Luke Campagnola
8355e6148d Performance improvements:
- AxisItem shows 2 tick levels instead of 3
  - 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)
These are deep changes; need good testing before we release them.
2013-01-09 22:21:32 -05:00
Luke Campagnola
f7f76101ca svg exporter updates 2012-12-25 22:20:31 -05:00
Luke Campagnola
c07a92efbe Reorganized directory structure to be more standard
Started new SVG exporter
Merged updates from ACQ4
2012-12-25 00:43:31 -05:00
Luke Campagnola
af59296231 Reorganized directory structure to be more standard
Started new SVG exporter
Merged updates from ACQ4
2012-12-25 00:43:31 -05:00
Luke Campagnola
80148920c9 Bugfixes:
- Image exporter detects GraphicsView background color
- Corrected exporter filename handling for SVG export
- ViewBox no longer attempts to deregister itself while python is exiting
- Speedup for conversion using np.array(MetaArray_instance)
- GLGraphicsItem updates immediately when its GL options have changed
- Corrected some GL shader program bugs for nVidia drivers
- Fixed coordinate mapping bug in functions.transformCoordinates
- Fixed PySide import error
2012-12-04 21:02:05 -05:00
Luke Campagnola
9cb199d971 documentation updates 2012-11-28 23:34:05 -05:00
Luke Campagnola
005160423e Converted all old-style classes to new-style for PySide compatibility. (thanks Chris) 2012-11-28 22:47:52 -05:00
Luke Campagnola
e5f383fbb5 Bugfixes and updates to functions.py:
- generalized makeARGB API: can now process arrays of arbitrary shape.
  - affineSlice automatically converts vector arguments to array
  - new function applyLookupTable taken from makeARGB
  - isosurface function returns array
Updated VideoSpeedTest example to follow new makeARGB API

LayoutWidget: row argument now accepts 'next' as value
ParameterTree bugfix: avoid infinite recursion when accessing non-existent attributes
ViewBox: avoid exit error caused when cleanup callback is invoked while python is shutting down
2012-11-23 16:01:25 -05:00
Luke Campagnola
679de86509 Minor changes and fixes:
- documentation updates
   - PlotItem informs all items when switching to log mode
   - GradientEditorItem has sigGradientChangeFinished
   - ParameterTree list types check linits on initialization
   - Fixed RuntimeError in TreeWidget.clear()
2012-10-31 01:53:16 -04:00
Luke Campagnola
16434272c2 Bugfix: ScatterPlotItem not updating correctly when view is resized
Documentation updates (linked GLImageItem and Legend item to indexes)
2012-10-22 13:34:03 -04:00
Luke Campagnola
ca9d0ed147 Added preliminary support for python 2.6
Fixed setup.py to automatically search for all sub-packages
2012-09-13 10:12:59 -04:00
Luke Campagnola
0402d08604 Minor updates and bug fixes:
- fixed handling of foreground colors in AxisItem
  - fixed rare crash caused in AxisItem 
  - fixed improper propagation of key events from SpinBox
  - many others
2012-08-31 17:18:06 -04:00
Luke Campagnola
45312120b1 Added TreeWidgetItem class: subclass of QTreeWidgetItem that manages its own column widgets 2012-08-17 16:11:30 -04:00
Luke Campagnola
a41d330c29 Bugfixes:
- Fixed some floating-point precision issues. (Added a workaround for QTransform.inverted() bug)
  - No longer putting asUnicode inside __builtin__ since this causes problems in some rare circumstances
    (pyshell, lazy import recipe)
  - Minor docstring updates
2012-07-12 15:35:58 -04:00
Luke Campagnola
662b319d7b - PlotItem can now be constructed with customized ViewBox and AxisItems
- Text spacing fix for AxisItem
2012-07-09 08:38:30 -04:00
Luke Campagnola
6d01aa2b09 Bugfixes:
- workaround for PySide exit crash
- fixed alpha of major/minor grid lines
2012-07-03 14:44:07 -04:00
Luke Campagnola
ad7b5f0aad - Default foreground / background colors can now be set using pyqtgraph.setConfigOption()
- Added pyqtgraph.systemInfo() for bug reporting
- GraphicsLayout does a better job of avoiding occupied cells when using automatic placement
- Fixed sizing issues with LabelItem
- Updated GraphicsLayout example
2012-06-29 14:39:27 -04:00
Luke Campagnola
f99ed791bc Added LayoutWidget 2012-06-29 12:36:31 -04:00
Luke Campagnola
96202aed3e Basic functionality in RemoteGraphicsView is working. 2012-06-22 22:10:37 -04:00
Luke Campagnola
d1fdbadd19 Multiprocessing updates / fixes:
- ForkedProcess is much more careful with inherited state -- closes file handles, removes atexit and excepthook callbacks
   - Remote processes copy sys.path from parent
   - Parallelizer has ProgressDialog support
   - Many docstring updates
   - Added some test code for remote GraphicsView rendering
2012-06-21 22:00:04 -04:00
Luke Campagnola
cc93c7ba43 Minor edits and fixes 2012-06-21 21:52:34 -04:00
Luke Campagnola
a7d2118a99 Added very simple, enterable object for setting busy cursor during long operations 2012-06-18 15:17:46 -04:00
Luke Campagnola
cc94e15d1e Minor edits and bugfixes
- fixed AxisItem sometimes drawing the same tick twice (sometimes with different text)
   - fixed handling of record arrays in setting ScatterPlotItem point data
2012-06-18 13:50:44 -04:00
Luke Campagnola
a4963f93b7 added flowchart node for removing periodic noise from waveform
metaarray updates:
  - better handling of HDF5 files
  - fixed some isinstance problems that appear during reloads
2012-06-18 13:45:47 -04:00
Luke Campagnola
6129df2019 code cleanup--removed old tests 2012-05-31 16:09:52 -04:00
Luke Campagnola
29be68d7fe Added PathButton -- simple button displaying a QPainterPath 2012-05-31 16:06:36 -04:00
Luke Campagnola
f258c3d87c minor bugfixes / features:
- optional context menu for ImageItem
 - inverted y-axis in Canvas (+y now points upward)
 - extra __init__ arguments for Dock
 - Transform can be constructed from Matrix4x4
 - many others
2012-05-29 23:18:34 -04:00
Luke Campagnola
fc9b3dee4d Started Python3 compatibility changes 2012-05-11 18:05:41 -04:00
Luke Campagnola
13b201bebb ScatterPlotItem overhaul:
- performance improvements
  - removed 'identical' argument; this is now handled automatically
  - some minor API changes to SpotItem
2012-05-10 23:37:07 -04:00
Luke Campagnola
2a6cc84254 documentation fixes 2012-05-08 22:56:44 -04:00
Luke Campagnola
2e03c9719f documentation fixes / updates 2012-05-08 18:14:12 -04:00
Luke Campagnola
9b5c8d0ada ScatterPlotItem minor performance fixes
SpinBox bugfix - improper handling of arguments to setOpts in integer mode
2012-04-30 18:20:27 -04:00
Luke Campagnola
dbbe3002a9 Documentation for SpinBox 2012-04-28 15:10:18 -04:00
Luke Campagnola
a71e4a5862 CheckTable now remembers and reloads the state of rows that disappear temporarily
Flowchart updates - added/fixed some display nodes
Merge from Kratz:
  - documentation updates
  - ComboBox class (updateList() allows entire item list to change while remembering previous setting)
2012-04-25 13:12:40 -04:00
Luke Campagnola
e962f4b7f4 doc update 2012-04-22 13:07:28 -04:00
Luke Campagnola
4eadccdcc1 documentation updates 2012-04-18 00:02:15 -04:00
Luke Campagnola
727214ca45 docstring updates 2012-04-15 10:20:07 -04:00