Commit Graph

493 Commits

Author SHA1 Message Date
Luke Campagnola 3f0a13d170
Merge pull request #658 from iillyyaa/py3-examples-division
examples: use integer division in indexing
2018-04-25 16:21:37 -07:00
Luke Campagnola e61bbeda41 Merge branch 'develop' into datatree-arrays 2018-04-25 11:25:57 -07:00
Ilya A. Kriveshko 20bcc39eb1 examples: use integer division in indexing
In python3 / operator produces a float, which is not a valid index.
Replace with // integer division.
2018-03-30 14:51:29 -04:00
Luke Campagnola 043a3b4d6d Better title 2018-03-29 18:30:46 -07:00
Luke Campagnola 1e1ce78a51 Merge branch 'Add_window_title' of https://github.com/Billy4195/pyqtgraph into Billy4195-Add_window_title 2018-03-29 18:30:25 -07:00
Luke Campagnola 840e0ac600
Merge pull request #630 from Billy4195/Refactor
Refactor MultiPlotSpeedTest.py
2018-03-29 18:11:39 -07:00
Luke Campagnola 358b1539ee add reduce import to fractal demo 2018-03-29 08:49:42 -07:00
Luke Campagnola 82afad8366 Fix up Qt.py and deprecate USE_XX variables 2018-02-16 20:42:34 -08:00
Billy Su afd8a6f423 Replace deprecate class in examples
Using class GraphicsLayoutWidget to replace the deprecated class
GraphicsWindow, cc #631.
2018-02-16 12:21:39 +08:00
Luke Campagnola 46f10f24f8 Merge branch 'develop' of https://github.com/maxpeng/pyqtgraph into maxpeng-develop 2018-02-15 18:30:12 -08:00
Billy Su 81562b0252 Refactor MultiPlotSpeedTest.py
* Change variable to meaningful name,
* Remove the outdated commented out code.
2018-02-03 11:01:03 +08:00
Billy Su 8a956bfddb Add main window title for the examples 2018-02-02 23:05:56 +08:00
Terekhov 551ccd105c Add an example of using text strings as a custom smbol in ScatterPlotItem 2018-01-29 21:18:26 -05:00
Luke Campagnola 870c047d30
Merge pull request #621 from campagnola/rgb-histogram
Rgb histogram
2018-01-26 08:52:10 -08:00
Luke Campagnola 677d9fa4b4
Merge pull request #597 from campagnola/fractal-demo
Add an interactive fractal demo
2018-01-25 08:59:28 -08:00
Luke Campagnola 0653c8ec59 Add example and test demonstrating spinbox bug 2018-01-24 09:11:42 -08:00
Luke Campagnola 001070d9ff Add new fractal demo 2017-10-18 00:26:37 -07:00
Luke Campagnola 60e6591608 Fix verlet integration demo 2017-10-18 00:18:46 -07:00
Luke Campagnola 7c1a6ecb1a Prevent dialog from moving label/bar widgets on resize when nested 2017-10-04 09:01:51 -07:00
Luke Campagnola f4c3d88251 Add option to join nested progress dialogs into a single window 2017-10-03 15:22:31 -07:00
Luke Campagnola 6e22524ac2 Update histogramlut example to allow rgb mode 2017-09-26 08:50:31 -07:00
Luke Campagnola 73d857750a Add check for EINTR during example testing; this should help avoid sporadic test failures on travis 2017-09-03 22:04:24 -07:00
Luke Campagnola 6cdad190ab Merge remote-tracking branch 'campagnola/develop' into datatree-arrays 2017-01-16 11:34:42 -08:00
Luke Campagnola f26b4ec3c7 Merge pull request #425 from james1293/develop
Removed unnecessary 'curve1' from 'global'
2017-01-14 22:17:34 -08:00
Luke Campagnola 504c35202a Merge pull request #410 from campagnola/spinbox-formatting
Spinbox formatting
2017-01-14 11:09:51 -08:00
james1293 b131785b86 Removed unnecessary 'curve1' from 'global' 2017-01-06 23:21:31 -05:00
Luke Campagnola 24b288a05a really actually fix 2016-12-14 10:19:01 -08:00
Luke Campagnola 8d85b87d71 py3 fix 2016-12-14 10:14:11 -08:00
Luke Campagnola 8fc98a6a0b Add print wrapper to work around interrupted system calls on travis 2016-12-14 10:07:16 -08:00
Luke Campagnola 95de07b48a Merge remote-tracking branch 'lidstrom83/SpinBox_wrapping' into spinbox-formatting 2016-12-09 10:07:28 -08:00
Luke Campagnola e5a17edb4d Add spinbox 'regex' and 'evalFunc' options to complete user-formatting functionality 2016-12-08 10:12:45 -08:00
Luke Campagnola e21d06b4c4 add missing example template file
add note about pyside bug affecting optics example
2016-11-04 22:47:10 -07:00
Luke Campagnola a0e4301b38 Fix VideoSpeedTest to disable RawImageGLWidget when openGL is unavailable 2016-10-26 09:26:01 -07:00
Luke Campagnola f6b00a135c fix optics demo on python3
print warning when setuptools is not available
2016-10-18 08:47:38 -07:00
Max Peng 1cbef74e82 update ui files for pyside2 and pyqt5. 2016-09-25 00:16:53 +08:00
Max Peng 8bdc19be75 update to support pyside2 2016-09-25 00:16:36 +08:00
Luke Campagnola 4ddf077a4b Fixed TextItem briefly drawing with incorrect transform.
(note flickering in examples/text.py)
2016-09-14 18:18:33 -07:00
Luke Campagnola 4b9f1a20a4 Merge pull request #370 from campagnola/image-alignment
Image alignment
2016-09-07 23:18:51 -07:00
Luke Campagnola e9afbb9b9c Clean up examples / docs 2016-08-31 15:14:25 -07:00
Luke Campagnola 2e36058130 IsocurveItem obeys imageAxisOrder config option 2016-08-27 22:36:05 -07:00
Luke Campagnola 67bff6b9ca bugfix in polylineroi.getarrayregion 2016-08-27 15:51:54 -07:00
Luke Campagnola e740cb4b49 updated examples to use normal axis order, fixed a few ROI bugs 2016-08-23 09:06:43 -07:00
Luke Campagnola bee5878915 Added imageAxisOrder config option
Added global config documentation
ROIs don't exactly work yet..
2016-08-23 09:06:43 -07:00
Kenneth Lyons 3ec02d0662 Fix opt name for SpinBox: range -> bounds. 2016-04-11 21:05:21 -07:00
Luke Campagnola eb625776c9 Merge branch 'meganbkratz-ImageViewWork' into develop 2016-04-02 23:28:33 -07:00
Luke Campagnola 0d2bd107b3 Use colormap with better perceptual contrast 2016-04-02 23:27:20 -07:00
Luke Campagnola 5e420fe100 Merge branch 'ImageViewWork' of https://github.com/meganbkratz/pyqtgraph into meganbkratz-ImageViewWork 2016-04-02 22:30:19 -07:00
Timer 18024a0ca8 fix a color name error 2016-03-27 23:09:06 +08:00
Luke Campagnola 9d64b269d5 Merge pull request #286 from campagnola/infiniteline-tests
combined infiniteline updates
2016-02-28 21:00:09 -08:00
Luke Campagnola ac14139c2d rename example 2016-02-28 18:54:55 -08:00
Luke Campagnola bd0e490821 cleanup: docs, default args 2016-02-28 12:26:05 -08:00
Luke Campagnola 7a0dfd768a Cleanup: add docstrings and setter methods to InfLineLabel, remove unused code 2016-02-22 00:23:36 -08:00
Luke Campagnola 170592c294 update example 2016-02-21 23:28:24 -08:00
Luke Campagnola 069a5bfeea Labels can rotate with line 2016-02-21 00:17:17 -08:00
Luke Campagnola 5172b782b5 Added inflinelabel class, label dragging and position update works.
Update to TextItem to allow mouse interaction
2016-02-19 00:41:42 -08:00
lesauxvi 5888603ebf addition of a draggable option for infiniteline 2016-02-16 08:14:53 +01:00
lesauxvi ba4b648263 addition of a convenient method for handling the label position 2016-02-16 06:48:59 +01:00
Megan Kratz 229fc6aec9 added lines setting a custom color map to the ImageView example 2016-02-15 16:58:57 -05:00
Luke Campagnola 392c3c6c17 Added symbol example to menu; minor cleanups to symbol example. 2016-02-14 23:15:39 -08:00
lesauxvi a8b5624444 example modifications 2016-02-15 06:55:02 +01:00
lesauxvi e7b27c2726 text location algorithm simplification 2016-02-05 13:57:51 +01:00
lesauxvi aec6ce8abb infinite line performance improvement 2016-02-04 03:28:59 +01:00
lesauxvi 51b8be2bd1 Infinite line extension 2016-02-03 12:52:01 +01:00
lesauxvi 07f610950d creation of a combined method for handling the label location 2016-02-01 11:17:36 +01:00
lesauxvi 0d4c78a6be Infiniteline enhancement 2016-01-15 16:13:05 +01:00
lesauxvi ce36ea4eb6 Infiniteline enhancement 2016-01-15 16:10:24 +01:00
lesauxvi 905a541253 new markers 2016-01-15 09:17:52 +01:00
lidstrom83 92d8c2630b Add spin box wrapping example. 2015-10-25 03:55:37 -06:00
Eric Dill afbc65325e py26: {} cannot be empty for string formatting
So that's a nasty gotcha of python 2.6!
2015-08-02 17:18:38 -04:00
Eric Dill 4b15fa75d5 TST: Use pgcollections.OrderedDict for 2.6 compat 2015-08-02 17:08:07 -04:00
Eric Dill c02dbe7679 TST: use pyqtgraph.Qt to import Qt stuff 2015-07-31 10:22:41 -04:00
Luke Campagnola 179b8db79d make `python examples/` work again 2015-07-12 17:13:56 -05:00
Eric Dill ed35993ae1 TST: all the testing 2015-07-12 16:12:42 -05:00
Eric Dill 6375c74109 TST: Finish testing all examples
- py.test will now run examples/test_examples.py too
2015-07-12 13:42:58 -05:00
Eric Dill e33dd2b269 MNT: Move most of __main__.py into utils.py 2015-07-12 11:46:12 -05:00
Luke Campagnola f34b69e660 Fix #92 (thanks jaxankey) 2015-06-03 22:18:02 -04:00
Luke Campagnola 0976991efd Import from python2_3 for all uses of basestring, cmp, and xrange 2015-05-19 09:29:55 -04:00
Luke Campagnola 8e1c3856ea Added more examples to menu
Minor edits
2015-03-01 16:52:15 -05:00
Luke Campagnola 1fe5976e19 Merge branch 'pyqt5' into develop
Conflicts:
	examples/parametertree.py
	pyqtgraph/Qt.py
	pyqtgraph/graphicsItems/FillBetweenItem.py
	pyqtgraph/graphicsItems/InfiniteLine.py
	pyqtgraph/imageview/ImageView.py
2015-02-28 11:46:41 -05:00
Luke Campagnola 52d7f2142c Fix line width in a few examples 2015-02-28 11:26:45 -05:00
Luke Campagnola 7e40b329e9 more examples working under pyqt5 2015-02-28 11:05:57 -05:00
Luke Campagnola 058dd183d3 Cleaned up example loader 2015-02-28 10:32:34 -05:00
Luke Campagnola caa15d2005 Merge branch 'compassym-pyqt5' into pyqt5 2015-02-28 09:38:38 -05:00
compass 98f079d86a Add pyqt5 support for examples/__main__.py 2015-01-17 18:45:32 +08:00
compass 478a3b1aa4 Fix some bugs in PyQt5 2015-01-17 00:21:33 +08:00
Luke Campagnola 77906fc7a2 corrections to manifest
Add pure-python integrator to verlet chain example
2014-12-23 15:55:52 -05:00
Luke Campagnola 85d6c86c67 Test submenu creation in example 2014-11-14 08:06:18 -05:00
Luke Campagnola 4543031ac5 Added DiffTreeWidget 2014-09-25 17:26:06 -04:00
Luke Campagnola cabd9d6bf2 Cleanup, better support for tracebacks in DataTreeWidget 2014-09-25 15:21:28 -04:00
Luke Campagnola 8c0064a323 DataTreeWidget uses TableWidget to represent arrays 2014-09-25 11:58:49 -04:00
Luke Campagnola 8b0a866ad9 Add ErrorBarItem.setData 2014-06-27 10:55:55 -04:00
Luke Campagnola 274c765594 Fixed relativity example 2014-06-14 11:35:00 -06:00
Luke Campagnola ba4f4e5105 Added image analysis example 2014-06-13 18:02:39 -06:00
Luke Campagnola 04f1b0e677 Added scrolling plot examples 2014-06-13 14:19:10 -06:00
Luke Campagnola 35856ccaee Added cx_freeze example (thanks Jerry!) 2014-06-06 15:53:17 -06:00
Luke Campagnola 374b5a33ed Added dialog to hdf5 example prompting user to generate sample data 2014-05-22 01:51:17 -04:00
Luke Campagnola 6e9d5c3cfb Python 3 fixes for new demos 2014-05-22 01:30:15 -04:00
Luke Campagnola 0524bfa6e8 Added new demos:
- Relativity simulator
- Optics simulator
- Mechanical chain simulator
2014-05-22 01:22:12 -04:00
Luke Campagnola 51f0a063ee minor cleanups 2014-05-08 09:50:26 -04:00
Luke Campagnola 98dec9e954 minor cleanup 2014-04-12 18:01:50 -04:00
Mikhail Terekhov ac90bf4c3b PlotDataItem: add missing 'stepMode' keyword argument for PlotCurveItem 2014-04-12 15:37:10 -04:00
Luke Campagnola cae310c570 Fix: avoid importing py3 module from pyqt when using py2 2014-04-03 13:33:16 -04:00
Luke Campagnola 0fb5f05fad Added py2exe example from Nitish 2014-04-03 13:31:02 -04:00
Luke Campagnola 77e02eded7 py3 fix for parametertree example 2014-03-29 11:34:05 -04:00
Luke Campagnola 0bb300b7f2 Generated qt5 template files 2014-03-29 06:57:13 -04:00
Luke Campagnola 2ce6196ac0 Fixed Parameter.sigValueChanging 2014-03-25 13:15:29 -04:00
Luke Campagnola 00c9c1e2a7 Fix ROI.sigRemoveClicked to avoid repeated signal emission
Update ROI example to demonstrate removal
2014-03-25 09:21:19 -04:00
Luke Campagnola 5f7e4dc644 Removed extra image window from VideoSpeedTest 2014-03-14 18:49:34 -04:00
Luke Campagnola 1edf1375ed Removed all dependencies on scipy.
Merge branch 'make_scipy_optional' into develop
2014-03-11 19:05:30 -04:00
Luke Campagnola 34802c8aec Added pg.gaussianFilter, removed all dependency on gaussian_filter 2014-03-11 19:01:34 -04:00
Luke Campagnola b398ccd0ce corrected import 2014-03-11 10:11:03 -04:00
Luke Campagnola 816069c020 All scipy imports in the library are now optional (need to test each of these changes)
Several examples still require scipy.
2014-03-11 10:11:03 -04:00
Luke Campagnola 00418e4921 Allow GLMeshItem to draw edges from MeshData with face-indexed vertexes. 2014-03-10 23:04:10 -04:00
Luke Campagnola 87ff0f314c Merge branch 'fix_finite_cache' into develop 2014-03-05 10:34:46 -05:00
Luke Campagnola 41c3d47d43 Correct GraphicsItem to use relative import of lru_cache
Update MultiPlotSpeedTest to test lru_cache performance
2014-03-05 10:25:55 -05:00
Luke Campagnola 7d32ef85be Added automatic image downsampling (disabled by default)
- Reduces aliasing when zoomed out
  - Improves performance and memory usage for large images
Merge branch 'image_downsampling' into develop

Conflicts:
	pyqtgraph/graphicsItems/ImageItem.py
2014-02-17 20:48:22 -05:00
Luke Campagnola d45467e4cb Merge branch 'cylinder_mesh' into develop
Adds MeshData.cylinder
2014-02-11 10:12:40 -05:00
Luke Campagnola 5488f9ec84 Added BarGraphItem.shape() to allow better mouse interaction 2014-02-09 10:38:29 -05:00
Luke Campagnola dc1af8946e Added a few new examples 2014-02-09 09:42:04 -05:00
Luke Campagnola 8730245990 Merge branch 'viewbox_limits' into develop
Adds ViewBox.setLimits method

Conflicts:
	examples/SimplePlot.py
2014-02-04 20:32:44 -05:00
Luke Campagnola 92d3b3fb94 cleanups 2014-02-02 10:45:32 -05:00
Luke Campagnola 96296749be Merge remote-tracking branch 'termim/master' into termim-fixes
ArrowItem: setStyle now combines new options with previously-set options.
AxisItem: fix minor exceptions
2014-02-02 10:43:29 -05:00
Luke Campagnola ff232f4e3a Added cylinder geometry to opengl MeshData 2014-02-01 20:46:05 -05:00
Mikhail Terekhov 95bddca014 In ArrowItem allow individual parameter change through setStyle call. 2014-01-31 23:00:18 -05:00
Mikhail Terekhov fe11e6c143 use examples directory for the output 2014-01-31 22:29:20 -05:00
Luke Campagnola d0ed3ba245 Removed duplicate limit-setting arguments
Renamed args for clarity, improved documentation
Fixed interaction bugs
 - zooming works correctly when view is against limit
 - no more phantom target range; target is reset during mouse interaction.
2014-01-31 13:04:47 -05:00
Luke Campagnola b0cafce3b4 Basic view limits appear to be working. 2014-01-30 10:50:07 -05:00
Luke Campagnola 5a1a663a50 MultiPlotWidget now uses scroll bar when plots do not fit in widget area. 2014-01-25 08:50:31 -05:00
Luke Campagnola 21639196d8 Fix imports in MultiPlotWidget and its example.
Merge remote-tracking branch 'termim/develop' into multiplotwidget-fix
2014-01-25 07:30:29 -05:00
Luke Campagnola 23779f004e - Fixed FillBetweenItem to force PlotCurveItem to generate path
- Added FillBetweenItem.setCurves()
- Added FillBetweenItem example
2014-01-23 10:34:26 -05:00
Mikhail Terekhov baa6c4b82c Fix metaarray import in MultiPlotWidget.py example and MultiPlotItem.py 2014-01-20 22:15:14 -05:00
Luke Campagnola eae32af0c7 Added symbol to Legend example 2014-01-18 23:30:03 -05:00
Luke Campagnola 6e5e35691c cleanups 2014-01-16 20:34:05 -05:00
Luke Campagnola 704f2f2048 Merge remote-tracking branch 'gpoulin/scatter_optim' into scatter-optim
Conflicts:
	pyqtgraph/functions.py
	pyqtgraph/graphicsItems/AxisItem.py
2014-01-15 00:11:05 -05:00
Luke Campagnola 4886270b53 PlotNode control widget now displays combo box to let user select plots to connect to
Flowchart example updated to use this feature.
2013-12-27 21:07:03 -05:00
Luke Campagnola 19be6959f3 Flowchart:
* Replaced dynamic imports with static
* Added NodeLibrary allowing multiple customized collections of Node types
2013-12-21 23:26:02 -05:00
Luke Campagnola 63f3b0ab6e Fix examples/hdf5.py to work properly with --test 2013-12-19 12:44:03 -05:00
Luke Campagnola 03c01d3b32 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
2013-12-19 12:30:00 -05:00
Luke Campagnola a0b7e5a61c Corrected mouse clicking on PlotCurveItem - now uses stroke outline instead of path shape
Added 'width' argument to PlotCurveItem.setClickable()
2013-12-19 09:56:58 -05:00
Luke Campagnola 4e9e75817f Added Qt.loadUiType function for PySide
Added example of simple Designer usage.
2013-12-17 21:23:37 -05:00
Antony Lee a9b1fd9079 Some Python3 related fixes. 2013-12-16 15:02:26 -08:00
Luke Campagnola bc7bc29740 Added HDF5 file to demonstrate dynamically plotting a subset of a very large dataset
* Loads only data that is currently visible
 * Downsamples to avoid plotting too many samples
 * Loads data in chunks to limit memory usage during downsampling
2013-12-08 12:47:04 -05:00
Luke Campagnola 6e74df28a0 Merge branch 'dont-copy-context-menu' into develop
This allows ViewBox context menus to be modified by directly manipulating ViewBox.menu
2013-11-21 23:38:44 -05:00
Luke Campagnola 5b905cde8b Override ViewBox.popup() to update menu before showing
Extend ViewBox menu in examples/contextMenu
2013-11-19 07:46:17 -05:00
Luke Campagnola 1418358bfb Fixed RemoteGraphicsView passing mouse events on python3 + pyside 2013-11-17 14:12:00 -05:00
Luke Campagnola 1e82104986 Fixed running `python examples --test` for python3; needs to be tested under windows. 2013-11-16 21:51:55 -05:00
Luke Campagnola 8d7ab108fd Fixed PySide issues by removing itemChange methods from GraphicsWidget and ViewBox;
Workaround is for ViewBox to see whether its scene has changed every time it paints.

Fixes: 12
2013-11-16 20:23:41 -05:00
Luke Campagnola 31928e70a5 Bugfixes:
- GraphicsView.render now correctly invokes GraphicsScene.prepareForPaint
 - Fixed RemoteGraphicsView renderer to use new PyQt QImage API.
 - multiprocess.Process now pipes stdout/err directly to console when in debugging mode
2013-11-06 23:14:27 -05:00
Luke Campagnola 96a4ff7cd5 Fixes:
- ROI updates on sigTransformChanged
  - ViewBox is more careful about accepting all auto-range changes up to the point it is disabled, even if the auto-range calculation is deferred.
2013-11-04 22:07:43 -05:00
Guillaume Poulin 3a9258e35e Correct comment in examples/ScatterPlot.py 2013-09-20 16:46:33 +08:00
Luke Campagnola 881589468d Python 3 bugfixes 2013-09-10 00:31:43 -04:00
Luke Campagnola f997b3079b Added GLBarGraphItem example
GLMeshItem accepts ShaderProgram or name of predefined program
Added missing documentation to GLGraphicsItem
minor edits
2013-09-06 15:36:36 -04:00
Guillaume Poulin c02e6184ef merge inp 2013-09-05 00:28:03 +08:00
Luke Campagnola 46901ae83a ListParameter bugfix: allow unhashable types as parameter values. 2013-07-12 13:14:09 -04:00
Luke Campagnola 7cd3e663f9 experimental GL video widget
temporary fix for text parameter ignoring expanded option
Don't use os.EX_OK in pg.exit()
2013-07-10 00:02:16 -04:00
Guillaume Poulin f2d0991102 Minor fixes for py3k 2013-07-04 05:52:16 +08:00
Luke Campagnola ba56899a36 Added basic wireframe mesh drawing 2013-05-29 14:33:14 -04:00
Luke Campagnola 671e624f17 Fixes:
AxisItem correctly handles scaling with values that are not power of 10
Can remove items from legend
updated plotItem setLogMode to allow unspecified axes
2013-05-09 23:02:14 -04:00
Luke Campagnola e0e1123d33 fixed import statements python3 compatibility
PolyLineROI.getArrayRegion correctly applies mask to N-dimensional data
fixed multiprocess for python2.6 compatibility
2013-04-29 08:13:28 -04:00
Luke Campagnola 1a0b5921df remotegraphicsview fix for PyQt 4.10 2013-04-07 16:18:58 -04:00
Luke Campagnola fde4267ccc Corrected use of setGLOptions for image, axis, and box 2013-04-07 09:16:21 -04:00
Luke Campagnola 09bc17bdb5 Fixed GLLinePlotItem line width option
Added antialiasing to GL line items
2013-03-30 22:39:11 -04:00
Luke Campagnola dbc8fe423b merged with inp 2013-03-26 13:48:14 -04:00
Luke Campagnola 8828892e55 merged many changes from acq4 2013-03-26 13:46:26 -04:00
Luke Campagnola ff59924ee0 fixed mouse scaling issue introduced in inp a few commits ago
added panning plot example
2013-03-19 21:22:23 -04:00
Luke Campagnola f029e7893e merged with inp 2013-03-19 16:05:32 -04:00
Luke Campagnola cefb4f9828 merged updates from acq4 2013-03-19 16:04:46 -04:00
Luke Campagnola 4716a84117 AxisItem bugfix: corrected x-linked view update behavior
Added MultiplePlotAxes example
2013-03-19 11:49:10 -04:00
Luke Campagnola 2f510de2ca Added PolyLineROI.getArrayRegion 2013-03-13 17:17:39 -04:00
Luke Campagnola db5c303fad TableWidget updates:
- Made numerically sortable
  - Added setEditable method
  - Added example
2013-03-06 06:27:24 -05:00
Luke Campagnola 262d4bf53f bugfix: examples working in PyQt 4.9.6 (workaround for API change) 2013-03-04 23:29:22 -05:00
Luke Campagnola a59f4c206a Fixed example testing on windows 2013-02-25 14:03:33 -05:00
Luke Campagnola 4cf9ef70ba Fixed modified example code execution 2013-02-25 13:45:24 -05:00
Luke Campagnola 475006f508 example loader allows editing code
Workaround for PySide bug; fixes GradientEditorItem
2013-02-25 13:03:21 -05:00
Luke Campagnola 491aee0fe2 python3 fixes
cleaned up examples
2013-02-24 23:09:03 -05:00
Luke Campagnola 412e1d2ec8 doc updates
ViewBox: made padding more consistent for all auto-ranging methods, deprecated autoRange(item=) in favor of autoRange(items=)
2013-02-20 11:13:50 -05:00
Luke Campagnola 815746895d Fixed GLSurfacePlot bug 2013-02-13 17:11:47 -05:00
Luke Campagnola 63c3b36a03 added a few examples 2013-02-13 13:00:50 -05:00
Luke Campagnola 9f55a27fdd More boundingRect / dataBounds bugfixes 2013-02-12 21:44:42 -05:00
Luke Campagnola 93a5753f5d Fixed auto ranging for scatter plots 2013-02-12 19:15:45 -05:00
Luke Campagnola a80f150b86 merge with inp 2013-02-11 21:47:00 -05:00
Luke Campagnola 4cec9ff044 Added ErrorBarItem to repository 2013-02-11 21:45:41 -05:00
Luke Campagnola 22bc2333a8 bugfixes 2013-02-10 21:04:00 -05:00
Luke Campagnola 4c887c8f50 Merge new fixes and features from acq4 2013-02-10 14:10:30 -05:00
Luke Campagnola ee21e2d054 fixed scatterplotitem segfault
added graphitem
2013-01-30 15:56:08 -05:00
Luke Campagnola c5dd0f4f63 Fixed print statements for python 3 2013-01-12 14:35:32 -05:00
Luke Campagnola 6903886b3a Fixes against previous commits:
- fixed example testing script
 - Added finer axis ticks back in some instances
 - fixed improper bounds caching in log/fft mode
 - fixed exception handling in remoteproxy
2013-01-11 20:21:11 -05:00
Luke Campagnola 513e904a59 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 5249c6794e examples fix -- prevent adding invalid entry to sys.path while searching for pyqtgraph
added script for generating debian changelog from bzr log
2012-12-29 21:51:29 -05:00
Luke Campagnola 5786a627b5 Added deprecation warning for Node.__getattr__
Expanded flowchart.Node docstrings
Added custom node example
2013-01-04 12:05:36 -05:00
Luke Campagnola 19d7bc5605 bugfixes for new package structure 2012-12-27 04:35:23 +00:00
Luke Campagnola 45048467b3 - Major reorganization; we now follow the standard python package structure.
- Overhaul of SVG export system. Seems to work well.
- Fixed image export bugs
- Added basic 3D line plot class
2012-12-26 17:51:52 -05:00
Luke Campagnola 51b0ba0877 added line plot example to menu 2012-12-26 15:26:04 -05:00
Luke Campagnola 5374afeca8 Added basic 3D line plot class 2012-12-26 15:22:44 -05:00
Luke Campagnola 51e88bd436 SVG export fixes 2012-12-26 13:48:12 -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 a157d9c4fa Added better API for controlling antialiasing in plots
PlotItem auto-range button is now hidden by default; only appears for plots that are not already auto-ranged and have mouse hover.
2012-12-23 00:51:28 -05:00
Luke Campagnola b25e34f564 Features:
- Canvas: added per-item context menus
- Isocurve: 
     option to extend curves to array boundaries
     option to generate QPainterPath instead of vertex array
- Isosurface is a bajillion times faster
- ViewBox
     added clear() method
     added locate(item) method (shows where an item is for debugging)

Bugfixes:
- automated example testing working properly
- Exporter gets incorrect source rect when operating on PlotWidget
- Set correct DPI and size for SVG exporter
- GLMeshItem works properly with whole-mesh color specified as sequence
- bugfix in functions.transformCoordinates for rotated matrices
- reload library checks for modules that are imported multiple times
- GraphicsObject, UIGraphicsItem: added workaround for PyQt / itemChange bug
- ScatterPlotItem: disable cached render during export

Other:
- added documentation for several functions
- minor updates to setup.py
2012-12-22 16:51:25 -05:00
Luke Campagnola ecca8855df - ScatterPlotItem disables render cache during export
- Fixes for SVG exporter
- functions.isosurface() is a bazillion times faster (API change: return value format has changed)
2012-12-22 15:16:38 -05:00
Luke Campagnola 3de5719011 Merged testing code from Kratz
Numerous fixes for python 3 compatibility
2012-12-05 00:25:45 -05:00
Megan Kratz c8123fefaa added primitive test capability to run through all examples - works but needs to be refined to make it better
-- to run the tests simply run "python pyqtgraph/examples --test"
2012-11-29 16:50:42 -05:00
Megan Kratz 70fde35e3b merge from Luke 2012-11-27 14:56:02 -05:00
Megan Kratz dde6a2ac4c work on DateAxisItem 2012-11-27 14:54:49 -05:00
Luke Campagnola aca9c8310f Major overhaul for GLMeshItem, MeshData classes
[ Note: These APIs have changed significantly. ]
  - MeshData and GLMeshItem now operate on numpy arrays instead of lists.
  - MeshData can handle per-vertex and per-triangle color information
Added GLSurfacePlotItem class based on new GLMeshItem
GLGraphicsItem now has per-item support for customizing GL state (setGLOptions method)
Added several new shader programs
Added new examples:
   GLIsosurface
   GLSurfacePlot
   GLshaders
2012-11-23 17:34:22 -05:00
Luke Campagnola 9b41c90034 New features for LegendItem:
- Can be anchored to parent item at any location
  - Support for filled plot styles
  - Automatically resizes to fit contents
  - PlotItem can auto-generate legend
2012-11-23 16:05:14 -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
Megan Kratz 2ca4cddff7 merge from luke 2012-11-10 11:27:33 -05:00
Megan Kratz af5a5d3eb3 Start of work on DateAxis 2012-11-10 11:22:56 -05:00
Luke Campagnola eab1d75592 ROI updates:
- ROI.movePoint now expects parent coordinates by default
   - Added ROI.getHandles()
   - Renamed MultiLineROI to MultiRectROI
   - Reorganized MultiRectROI, added addSegment and removeSegment methods (thanks Martin!)
2012-10-31 02:01:55 -04:00
Luke Campagnola b09182d19a GLScatterPlotItem: use shader programs to allow specifying spot size by array
Reorganized shader programs
Infrastructure updates for OpenGL system
2012-10-26 21:47:45 -04:00
Luke Campagnola 450626a3bb Fixes for PySide compatibility 2012-10-26 08:55:53 -04:00
Luke Campagnola bbba3f1f78 Updated GLScatterPlotItem for performance. 2012-10-26 00:09:47 -04:00
Luke Campagnola f04049f098 Added histogram example 2012-10-22 14:10:16 -04:00
Luke Campagnola 65ed889a77 Added very basic LegendItem. Functional, but still missing some basic features.
Added GLImageItem and example.
2012-10-18 23:18:20 -04:00
Luke Campagnola c4019b900d Overhaul of ScatterPlotItem to improve performance. (API should be mostly unchanged)
Much more efficient at rapid updates.
2012-10-18 22:48:36 -04:00
Luke Campagnola 5081c97ac5 Better support for frozen environments:
- built in Christian Gavin's os.listdir replacement
  - added os.isdir replacement
Fixed ViewBox causing errors at shutdown
2012-10-11 00:57:24 -04:00
Luke Campagnola 1d05656a73 - Fixed issue with numpy.concatenate wrapper
- ConsoleWidget now correctly catches its own exceptions
- Fixed ViewBox auto-scaling bug
- Fixed functions.siEval not parsing units correctly
- Fixed bug caused when opengl GL_VERSION_STR is None
2012-10-09 20:40:48 -04:00
Luke Campagnola 27c90c5dd5 Many minor updates:
- added ability for ScatterPlotItem to use arbitrary symbol shapes
- added scatter plot speed test for evaluating new methods
- added butterworth notch filter to flowchart library
- fixed bugs with ViewBox trying to close itself after python has started cleaning up
- fixed python 2.6 compatibility bug in PlotCurveItem
- fixed support for list-of-dicts and dict-of-lists input for PlotDataItem
- check to ensure Qt version is >= 4.7
- workaround for numpy segmentation fault
- several other minor updates and documentation changes
2012-10-02 21:23:59 -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 32311351f1 Now detects and switches between PyQt / PySide automatically; no need to distribute different versions of the library anymore. 2012-09-09 19:07:36 -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 237625a48d Parametertree updates:
- Fixed up parametertree.saveState() and restoreState() methods
  - Updated parametertree documentation
2012-08-17 16:17:44 -04:00
Luke Campagnola e62af590e7 Added custom graphicsitem example 2012-08-17 16:17:09 -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 0ee255acfb Fixed up parametertree.saveState() and restoreState() methods 2012-08-17 15:32:11 -04:00
Luke Campagnola 0f97ac77e2 merge from dev 2012-08-14 10:22:05 -04:00
Luke Campagnola e4e3a636f3 Added console example to menu 2012-08-03 00:08:05 -04:00
Luke Campagnola f81e94061f added dockarea example 2012-07-10 16:30:03 -04:00
Luke Campagnola 4384944952 Cleaned up parametertree example 2012-07-09 17:14:41 -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 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 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 e6a017a89d linked ConsoleWidget in to example menu 2012-06-18 20:01:32 -04:00
Luke Campagnola 72006fe05b Added custom multiprocessing module:
- allows starting new processes and controlling them remotely from the parent process
  - remote processes can run their own GUI, Qt signals can be connected between processes
    (in general this is not possible with the built-in multiprocessing module due to
    the use of fork() ).
  - Control works by a system of proxy-objects such that controlling a remote process
    looks almost exactly like working with local objects.
  - Uses sockets to communicate between processes (so in theory could be made to 
    work over a network), but also includes a mode that uses fork() to allow fast
    parallelization.
  - Wicked-easy inline parallelization by adding only one line of code to break up work between
    processes (requires fork; sorry windows users)
2012-06-18 15:20:35 -04:00
Luke Campagnola c7a78642fd Added interactive console widget:
- GUI interactive python prompt, useful in a variety of situations where
    python -i or ipython don't work very well. 
  - Command history (requires a little help finding storage for this)
  - Exception catching, allowing the user to inspect local variables 
    at any level within a stack trace (currently, this is done _without_
    blocking the application)
2012-06-18 15:18:38 -04:00
Luke Campagnola 6932c34126 - Added workaround for Qt bug: https://bugreports.qt-project.org/browse/QTBUG-18616. (GraphicsItem.setParent needs to check for scene change first)
This _could_ cause other problems, but they will certainly be fewer than the existing problems.

- Fixed bugs with ViewBox linking to views which are subsequently deleted
2012-06-18 14:00:19 -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 c79e794e53 Added ui file for ScatterPlotSpeedTest 2012-05-31 16:06:13 -04:00
Luke Campagnola 5644a17045 Added new examples 2012-05-31 16:05:19 -04:00
Luke Campagnola ce5fef9675 Added new ROI example 2012-05-30 01:02:03 -04:00
Luke Campagnola 55e58ac6ad updated arrow example 2012-05-29 23:44:14 -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 0f1f6c62e4 Enforced LF file endings
removed stray print statement
2012-05-23 20:29:16 -04:00
Luke Campagnola 8a9557cff1 added GradientWidget example 2012-05-11 20:10:48 -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 7c1c9f8d04 added auto-ranging example 2012-05-08 17:55:25 -04:00