Adam Strzelecki
983cc1695e
Patch/window handling ( #468 )
...
* Do not wrap PlotView/ImageView
There is no need to wrap PlotView/ImageView into QMainWindow, since
only purpose of the QMainWindow is some default menu toolbar & menu
handling, that is not used by PyQtGraph anyway.
Moreover, every parent-less Qt widget can become window, so this
change just use PlotView/ImageView as windows, removing extra
complexity, eg. method forwarding, self.win property.
Another benefit of this change, it that these windows get initial
dimensions and titles as they were designed in .ui file.
* Properly cleanup on ImageView.close()
We should not close explicitly child widgets or clear scene, otherwise
Qt will deallocate children views, and cause "wrapped C/C++ object of
type ImageItem has been deleted" error next time we call close()
and/or some other methods.
All children, including self.ui.roiPlot, self.ui.graphicsView will be
closed together with its parent, so there is no need to close them
explicitly.
So the purpose of close it to reclaim the memory, but not to make the existing ImageView object dysfunctional.
* Remove references to plot & image windows after close
PyQtGraph images and plots module list variables are currently holding
references to all plots and image windows returned directly from main
module. This does not seem to be documented however, and causes the Qt
windows to be not released from memory, even if user releases all own
references.
This change removes the references from images/plots list once window
is closed, so when there is no other reference, window and all related
memory is reclaimed.
* Change all UI forms title from Form to PyQtGraph
Co-authored-by: Ogi Moore <ognyan.moore@gmail.com>
2020-06-01 11:23:18 -07:00
Luke Campagnola
9d1fbb6a3e
Add warning about PySide 5.14, avoid a confusing error message that would appear with 5.14
2020-05-29 23:42:35 -07:00
Marko Bausch
4052f0dd11
Added context menu option to paramtree
2020-05-22 16:05:52 +02:00
Lev Maximov
a76d9daec2
Date axis item ( #1154 )
...
* Add DateAxisItem
* Change style to camelCase
* Fix missing first tick for negative timestamps
* Add ms precision, auto skipping
Auto skipping allows a zoom level to skip ticks automatically if the
maximum number of ticks/pt is exceeded
* fixes suggested by @goetzc
* workaround for negative argument to utcfromtimestamp on windows
* attachToPlotItem method
* default date axis orientation
* Use new DateAxisItem in Plot Customization example
* attachToPlotItem bugfix
* examples of DateAxisItem
* modified description of customPlot example
* added descriptions to the new examples, reformatted their code, included the first one into utils.py
* typo
* Refactored code for setting axis items into new function
Replaces "DateAxisItem.attachToPlotItem"
* Fix string comparison with ==
* Doc: Slightly more text for DateAxisItem, small improvement for PlotItem
* Make PlotWidget.setAxisItems official
* Fix typo in docstring
* renamed an example
* merge bug fix
* Revert "merge bug fix"
This reverts commit 876b5a7cdb
.
* Real bug fix
* support for dates upto -1e13..1e13
* Automatically limit DateAxisItem to a range from -1e12 to 1e12 years
Very large years (|y|>1e13) cause infinite loop, and since nobody
needs time 100 times larger than the age of the universe anyways,
this constrains it to 1e12.
Following suggestion by @axil:
https://github.com/pyqtgraph/pyqtgraph/pull/1154#issuecomment-612662168
* Also catch ValueErrors occuring on Linux before OverfloeErrors
While zooming out, before hitting OverflowErrors, utctimestamp
produces ValueErrors (at least on my Linux machine), so they
are also catched.
* Fix: Timestamp 0 corresponds to year 1970
For large years, x axis labels jump by 1970 years if it is not
accounted for timestamp 0 to be equal to year 1970.
* Fix: When zooming into extreme dates, OSError occurs
This commit catches the OSError like the other observed errors
* Disable stepping below years for dates outside *_REGULAR_TIMESTAMP
2 reasons: First: At least on my Linux machine, zooming into
those dates creates infinite loops. Second: Nobody needs
sub-year-precision for those extreme years anyways.
* Adapt zoom level sizes based on current font size and screen resolution
This is somewhat experimental. With this commit, no longer 60 px are
assumed as width for all zoom levels, but the current font and
display resolution are considered to calculate the width of ticks in
each zoom level. See the new function `updateZoomLevels` for
details.
Before calling this function, overridden functions `paint` and
`generateDrawSpecs` provide information over the current display
and font via `self.fontScaleFactor` and `self.fontMetrics`.
* Meaningful error meassage when adding axis to multiple PlotItems
As @axil noted in the DateAxisItem PR, currently users get a
segmentation fault when one tries to add an axis to multiple
PlotItems. This commit adds a meaningful RuntimeError message
for that case.
* setZoomLevelForDensity: Refactoring and calculating optimal spacing on the fly
* DateTimeAxis Fix: 1970 shows when zooming far out
* Refactoring: Make zoomLevels a customizable dict again
* updated the dateaxisitem example
* Fix: Get screen resolution in a way that also works for Qt 4
This is both a simplification in code and an improvement in backwards compatibility with Qt 4.
* DateAxisItem Fix: Also resolve time below 0.5 seconds
* unix line endings in examples
* DateTimeAxis Fix: For years < 1 and > 9999, stepping broke
Stepping was off by 1970 years for years < 1 and > 9999,
resulting in a gap in ticks visible when zooming out. Fixed by
subtracting the usual 1970 years.
* DateTimeAxis Fix: Zooming out too far causes infinite loop
Fixed by setting default limits to +/- 1e10 years. Should still
be enough.
* improved second dateaxisitem example
* 1..9999 years limit
* DateTimeAxis: Use OrderedDict to stay compatible with Python < 3-6
* DateAxisItem: Use font height to determine spacing for vertical axes
* window title
* added dateaxisitem.rst
* updated index.rst
Co-authored-by: Lukas Heiniger <lukas.heiniger@sed.ethz.ch>
Co-authored-by: Lev Maximov <lev.maximov@gmail.com>
Co-authored-by: 2xB <2xB@users.noreply.github.com>
2020-04-27 11:43:22 -07:00
Ogi Moore
556ba55be3
Merge pull request #1124 from dargor/color_examples
...
Syntax highlighting for examples.
2020-03-08 07:19:54 -07:00
Gabriel Linder
d0b92349dd
Intercept light/dark modes transitions on MacOS.
2020-03-08 10:34:54 +01:00
Gabriel Linder
412698c8bb
Dark mode support.
2020-03-07 23:02:40 +01:00
Ogi
19ae94765f
Skip tests involving loadUi with pyside2 5.14
2020-02-24 23:00:42 -08:00
Gabriel Linder
adba81a8d8
Syntax highlighting for examples.
2020-02-11 11:23:58 +01:00
Ogi Moore
2203933393
Declare scipy optional ( #1067 )
...
* Replace use of scipy.random with numpy.random
* Update README to reflect scipy being an optional depenency
2019-11-12 09:02:08 -08:00
Elliott Sales de Andrade
d726a9693e
Fix UnboundLocalError in VideoSpeedTest.
2019-09-13 01:07:57 -04:00
Ogi Moore
584c4516f0
Expand CI + pre-commit ( #991 )
...
* Initial attempt at extra checks in CI land
* Adding flake8 config
* Adding pre-commit configuration and explanation in CONTRIBUTING.md
2019-08-29 13:56:25 -07:00
2xB
05aa3e9393
Add 'fillOutline' option to draw an outline around a filled area ( #999 )
2019-08-17 09:57:40 -07:00
Ogi
fe637512b5
Skip GL* examples if on macOS with python2 and qt4 bindings, and update readme
2019-06-25 23:05:38 -07:00
2xB
edf2942010
Replaced usage of deprecated ROI classes in example ( #946 )
2019-06-21 21:19:02 -07:00
Ogi Moore
0cc4900d7a
Skip some test examples ( #937 )
...
* Skip RemoteSpeedTest.py during testing
* Skip `optics_demos.py` test on PySide 1. 2.4 due to documented pyside bug
2019-06-21 08:36:42 -07:00
Ogi
f05ff6fbf9
Restore duplicate entries in examples app, but test_examples does not duplicate tests
2019-06-10 21:20:31 -07:00
Ogi
be0e95ace7
Incorporating requested changes
2019-06-03 20:49:31 -07:00
Ogi
9f66b7dc6e
Much better error reporting/tracepacks on examples
2019-06-02 22:16:35 -07:00
Ogi
d2331bde7f
Removing duplicate entries
2019-06-01 22:36:29 -07:00
Ogi
5ff409ba4b
Move example test code such that pytest is required
2019-06-01 22:36:11 -07:00
Ogi Moore
eb90616ae2
Merge pull request #905 from 2xB/test_exclude_examples
...
Exclude selected examples from tests (such as HDF5)
2019-05-31 22:28:54 -07:00
Luke Campagnola
52fef555ee
Merge pull request #904 from j9ac9k/take-screenshots
...
Take screenshots + Show Resolution
2019-05-29 13:12:12 -07:00
2xB
560993e8c5
Exclude selected examples from tests (such as HDF5)
2019-05-29 11:16:09 +02:00
Ogi
f2aeea8964
We support pyside2 don't we?
2019-05-28 22:57:12 -07:00
2xB
a37e877631
Add PyQt5 and PySide2 to test_example.py ( #897 )
...
* Add PySide2 to test_example.py
Before, example tests are skipped because no PyQt version was found
2019-05-27 21:07:25 -07:00
MingZZZZZZZZ
3f93e30b31
Update Legend.py
...
add legend examples for line plot, bar graph and scatter plot.
2018-12-21 01:47:23 -05:00
Luke Campagnola
2884eef079
Add ViewBoxFeatures to example menu
2018-07-10 05:56:35 -07:00
Luke Campagnola
f8efbec53f
Add image hover callback to imageAnalysis example
2018-07-07 00:10:15 -07:00
Luke Campagnola
08349351da
Fix QString handling
2018-06-22 17:31:58 -07:00
Luke Campagnola
3fd56eb195
Handle Qt4/5 API difference in filedialog
2018-06-22 17:26:31 -07:00
Luke Campagnola
060d2479f9
minor fixes
2018-06-15 14:18:38 -07:00
Luke Campagnola
69645895c9
flip template line endings
2018-05-24 08:54:31 -07:00
Luke Campagnola
ebc805a45f
workaround pyside bug #671
2018-05-23 21:12:16 -07:00
Luke Campagnola
66dcfc7c67
Merge branch 'develop' into pyside2
2018-05-22 15:22:54 -07:00
Luke Campagnola
8da208b914
flip pyside2 template line endings
2018-05-17 09:02:41 -07:00
Luke Campagnola
4d26b4bb20
Fix py3 string handling in scatterplotwidget example
2018-05-09 10:56:01 -07:00
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