Commit Graph

120 Commits

Author SHA1 Message Date
Luke Campagnola
152c5d393f Fixed bool / monochrome image display, added more unit tests 2016-09-07 17:56:00 -07:00
Luke Campagnola
748a8433b9 minor edits 2016-09-06 17:46:52 -07:00
Luke Campagnola
f2a72bf780 Image tester is working 2016-02-12 03:03:52 -08:00
Luke Campagnola
ee3e6212fa correction for catch_warnings on python 3 2016-01-30 12:26:23 -08:00
Luke Campagnola
3f03622a02 fix isosurface/isocurve for numpy API change 2016-01-30 10:06:58 -08:00
Luke Campagnola
f279988916 suppress numpy futurewarning
cleanups in arraytoqpath
2016-01-30 09:08:05 -08:00
Luke Campagnola
586de3176e Merge remote-tracking branch 'pyqtgraph/develop' into u55-u55-patch-1 2016-01-30 00:54:29 -08:00
Luke Campagnola
a41f3c362c fix case where connect is ndarray 2016-01-30 00:53:49 -08:00
Luke Campagnola
70482432b8 Improve ImageItem performance by scaling LUT instead of image when possible.
Moved eq function from flowcharts to main function library to support this.
Bonus: fixed a flowchart bug (backspace deletes wrong connector) while I was in there.
2016-01-30 00:10:25 -08:00
Luke Campagnola
4be2869773 corrections and cleanups for functions.makeARGB
added unit test coverage
2016-01-29 23:11:01 -08:00
Luke Campagnola
e2f43ce4be simplify makeARGB: remove float support (this was never functional anyway)
remove rescale->lut optimization; this should be done in ImageItem instead.
2016-01-25 18:32:37 -08:00
u55
2f2975212f Fix Numpy FutureWarning. Try again. 2016-01-11 23:30:23 -07:00
u55
2c415a8b03 Fix Numpy FutureWarning.
Don't accidentally compare an array to string. Fixes issue #243.
2016-01-11 23:02:12 -07:00
Luke Campagnola
99aa4cfdd3 Performance improvements for makeARGB. Also adding unit tests.. 2016-01-10 23:08:19 -08:00
Luke Campagnola
e495bbc69b Use inplace multiply 2016-01-02 10:31:03 -08:00
D.-L.Pohl
37367c8ac5 Update functions.py
BUG: fix scaling with numpy 1.10
2015-10-23 10:31:56 +02: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
baefdd0880 Merge branch 'fix-interpolate' into develop 2015-02-16 11:39:01 -05:00
Luke Campagnola
4066c7c76e tests working 2015-02-16 11:23:52 -05:00
Luke Campagnola
accafcce36 WIP: adding new tests and fixing bugs in pg.interpolateArray 2015-02-16 11:04:58 -05:00
Luke Campagnola
42eae475b9 Disable image downsampling when n=1 2014-08-07 09:12:31 -04:00
Luke Campagnola
753ac9b4c4 Squashed commit of the following:
commit ca3fbe2ff9
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Thu Aug 7 08:41:30 2014 -0400

    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 09:03:26 -04:00
Luke Campagnola
d004b133cd Removed unnecessary file allocation from functions.interpolateArray 2014-05-27 18:46:34 -04:00
Luke Campagnola
6b66edfd46 Added Travis CI support
Fixed bugs / style issues to please Lord Travis

Squashed commit of the following:

commit f25048a1e1
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Sun Mar 30 02:40:47 2014 -0400

    syntax

commit cc8b69695a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Sun Mar 30 02:36:49 2014 -0400

    add size check, diff style check

commit 5d5ea065a4
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Sun Mar 30 02:16:05 2014 -0400

    travis fix

commit b154c6d997
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Sun Mar 30 02:09:41 2014 -0400

    travis, flake colored output

commit 46921dcd87
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Wed Mar 26 12:37:54 2014 -0400

    fix pyside+py3 bugs to satisfy CI

commit 1d30f3c5c7
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Wed Mar 26 11:13:18 2014 -0400

    fix py3 tests

commit 426578fa4c
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Wed Mar 26 07:39:19 2014 -0400

    fix pytest install

commit 88a13c1a71
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Wed Mar 26 00:29:29 2014 -0400

    qt5 updates

commit 51995488cc
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Wed Mar 26 00:16:04 2014 -0400

    correct py.test command for py3

commit e2b02fbcbd
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 23:50:38 2014 -0400

    fix 2nd install test

commit 4b3e3ee04a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 23:31:31 2014 -0400

    syntax error

commit 250eabdb34
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 23:13:42 2014 -0400

    look for py.test3

commit 9f9bca47c1
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 22:54:19 2014 -0400

    fix syntax

commit 0a871c6f36
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 22:47:58 2014 -0400

    output pip build log

commit dbce58d8cd
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 22:38:55 2014 -0400

    no comments allowed between shall lines

commit b79c06121d
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 20:56:35 2014 -0400

    another pip try

commit 09f4f5d82a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 13:36:09 2014 -0400

    pip correction

commit 0eedb5c18e
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 13:29:00 2014 -0400

    correct py version output

commit d9fd039be2
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 11:55:43 2014 -0400

    apt checks

commit cf95ccef86
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Tue Mar 25 10:23:10 2014 -0400

    alternate pip install method

commit bee0bcddfe
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:51:45 2014 -0400

    correct deps install

commit 963a4211fc
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:47:30 2014 -0400

    fixes

commit 0c86cd1dc2
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:31:06 2014 -0400

    permission fix

commit 5d04ef53b8
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:30:19 2014 -0400

    Fix py.test version selection

commit b0e6c7cb94
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:25:34 2014 -0400

    try another pyqt5 install method

commit 422a792866
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:12:36 2014 -0400

    syntax error

commit 533133905a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 23:04:37 2014 -0400

    fixes

commit 8d65211ba4
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 22:40:18 2014 -0400

    Add Qt5 test
    minor fixes

commit 4484efaefe
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 22:31:56 2014 -0400

    use correct py.test for python version

commit 5d2441a29b
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 22:24:27 2014 -0400

    add setup tests

commit 9291db64f2
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 21:48:43 2014 -0400

    fix py3-pyqt install

commit a7aa675c5a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 21:31:33 2014 -0400

    travis tests

commit e71cd2b23a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 21:17:15 2014 -0400

    more corrections

commit 527df3bca8
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 20:56:01 2014 -0400

    travis corrections

commit 87d65cac4a
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 20:48:02 2014 -0400

    Add flake tests
    Correct style in a few files to please Lord Travis

commit 537028f88f
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 17:36:24 2014 -0400

    minimize pyside package install
    correct line endings to satisfy Lord Travis

commit 1e3cc95e37
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 17:23:03 2014 -0400

    enable pyside, line ending check
    fix test

commit d7df4517f9
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 17:12:06 2014 -0400

    syntax fix

commit 1ad77a2155
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 17:00:30 2014 -0400

    alt. pytest install

commit 5edcc02072
Author: Luke Campagnola <luke.campagnola@gmail.com>
Date:   Mon Mar 24 16:52:33 2014 -0400

    Added initial travis.yml
2014-03-30 02:51:32 -04:00
Luke Campagnola
34802c8aec Added pg.gaussianFilter, removed all dependency on gaussian_filter 2014-03-11 19:01:34 -04:00
Luke Campagnola
ff697ce492 Expanded capabilities of interpolateArray function to support broadcasting 2014-03-11 13:13:33 -04:00
Luke Campagnola
72a3902a18 Added pure-python implementation of scipy.ndimage.map_coordinates 2014-03-11 10:11:04 -04:00
Luke Campagnola
4263379a90 added test for solve3DTransform 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
c72638ab1b Merge branch 'tommy3001-doc-updates' into develop
Conflicts:
	pyqtgraph/graphicsItems/AxisItem.py
	pyqtgraph/graphicsItems/PlotDataItem.py
	pyqtgraph/graphicsItems/ROI.py
2014-02-28 21:07:43 -05:00
Luke Campagnola
ab0729bb04 Add check for even array length when using arrayToQPath(connect='pairs') 2014-02-28 08:55:30 -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
d67464af72 Update imageToArray to support Py2.6 + Qt 4.10 2014-02-17 20:02:03 -05:00
tommy3001
2279775244 Merge branch 'develop' of https://github.com/pyqtgraph/pyqtgraph into develop 2014-02-05 20:06:22 +01:00
Luke Campagnola
bccbc29940 Bugfixes:
- 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-03 22:24:45 -05:00
tommy3001
92d7bbe18e In list tables "**Arguments**", "Arguments:" changed to **Arguments:** 2014-02-03 21:13:10 +01: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
19293d5b67 fixed division by zero 2014-01-14 22:29:46 -05:00
Luke Campagnola
f630734453 Switching to relative imports to allow pyqtgraph to be imported under other names.
finished top-level files and graphicsItems
2013-12-22 02:08:39 -05:00
Antony Lee
f136b33033 Profilers controllable via PYQTGRAPHPROFILE.
A new function profiling system is implemented.  Most importantly, this
allows one to profile various internal functions directly by setting the
`PYQTGRAPHPROFILE` environment variable to a comma separated list of
function and method names, e.g.

    PYQTGRAPHPROFILE=functions.makeARGB,ImageItem.render \
        python -mexamples

Specifically, items in `PYQTGRAPHPROFILE` must be of the form
`classname.methodname` or `dotted_module_name.functionname`, with the
initial "pyqtgraph." stripped from the dotted module name.

Moreover, the overhead of inactive profilers has been kept minimal: an
introspective check of the caller's name (only if `PYQTGRAPHPROFILE` is
set) and a trivial function (not method) call per profiler call.

The new profilers rely on `sys._getframe` to find the caller's name,
although the previous system (passing the caller's name explicitely)
could certainly have been kept instead.

Finally the API of profilers has been changed: register a
profiling point simply by calling the profiler, and profilers are
automatically flushed on garbage collection.  See the docstring of
`pyqtgraph.debug.Profiler` for more details.
2013-11-27 09:57:46 -08:00
Luke Campagnola
c1f72b29c6 Merge branch 'faster-make-argb' into develop
- Speed improvements in functions.makeARGB
- ImageItem is faster by avoiding makeQImage(transpose=True)
2013-11-24 21:11:21 -05:00
Luke Campagnola
71ee4deb84 - fixed ImageItem handling of rgb images
- fixed makeARGB re-ordering of color channels
2013-11-24 21:10:06 -05:00
Luke Campagnola
bd2330af9f ImageItem performance boost by avoiding makeQImage(transpose=True) 2013-11-24 20:45:10 -05:00
blink1073
a08b28c958 Simplify to take transpose logic out of makeARGB function 2013-11-24 15:50:28 -06:00
blink1073
ddce17dc62 Undo remove trailing whitespace 2013-11-23 23:08:18 -06:00
blink1073
85d7116482 Speedups for making ARGB arrays 2013-11-23 23:02:19 -06:00
Luke Campagnola
0a5cb62a6f ImageItem now has auto downsampling; seems to be working properly.
Still need auto clipping as well.
2013-11-20 13:51:39 -05:00
Luke Campagnola
f8772d179f removed unused variable 2013-11-14 12:16:31 -05:00
Guillaume Poulin
63bf2b3270 optimize ScatterPlotItem with pxMode=True 2013-09-20 15:46:10 +08:00
Luke Campagnola
58048a703c - Removed inf/nan checking from PlotDataItem and PlotCurveItem; improved performance
- Added 'connect' option to PlotDataItem and PlotCurveItem to affect which line segments are drawn
- arrayToQPath() added 'finite' connection mode which omits non-finite values from connections
2013-09-13 03:27:26 -04:00
Guillaume Poulin
a290a39779 merge with inp 2013-07-05 00:09:30 +08:00
Luke Campagnola
934e50ad55 Added python3 support for efficient method in arrayToQPath 2013-07-04 08:34:18 -04:00
Guillaume Poulin
f2d0991102 Minor fixes for py3k 2013-07-04 05:52:16 +08:00
Luke Campagnola
6e253e409b merge from acq4:
- Support for dynamic downsampling and view clipping in PlotDataItem / PlotItem
  - fixed __truediv__ handling
  - ViewBox updates to fix aspect locking (still broken)
  - AxisItem tries to be more clever about when to display tick text
  - Fix segmentation fault caused by exception inside GraphicsItem.paint()
  - Added 'x' scatter plot symbol
  - pg.mkPen supports dashes
2013-07-03 11:36:07 -04:00
Luke Campagnola
8c13a3e7e3 copy from acq4 2013-07-03 11:20:49 -04:00
Luke Campagnola
adda8ae24d New methods in use for converting array -> QImage.
This fixes memory leaks with PyQt 4.10 _except_ when using makeQImage(copy=False).
Tested on 4.9.3 and 4.10.2; need to be tested against other versions.
2013-06-19 19:36:46 -04:00
Luke Campagnola
a55d58024d Added Dock.close()
Fixed bugs in functions weave usage
Documented ROI signals
Fixed 3D view updating after every scene change
2013-05-22 14:09:56 -04:00
Luke Campagnola
720c5c0242 Fixed handling of non-native dtypes when optimizing with weave 2013-05-13 14:46:53 -04:00
Luke Campagnola
8828892e55 merged many changes from acq4 2013-03-26 13:46:26 -04:00
Luke Campagnola
83812ad5b8 Bugfixes:
- AxisItem did not update grid line length when plot stretches
  - Workaround for PySide/QByteArray memory leak
2013-02-26 21:54:56 -05:00
Luke Campagnola
a80f150b86 merge with inp 2013-02-11 21:47:00 -05:00
Luke Campagnola
c80bfb334c Fix for new QImage API in PyQt 4.9.6 2013-02-11 16:38:13 -05:00
Luke Campagnola
6e5c5e402b merged many new features from ACQ4 2013-02-10 17:45:16 -05:00
Luke Campagnola
97da32c4ec minor edit 2013-02-10 14:16:21 -05:00
Luke Campagnola
ee21e2d054 fixed scatterplotitem segfault
added graphitem
2013-01-30 15:56:08 -05:00
Luke Campagnola
4dc9b83816 Fixes for Python3, PySide 2013-01-12 18:07:35 -05:00
Luke Campagnola
c5dd0f4f63 Fixed print statements for python 3 2013-01-12 14:35:32 -05:00
Luke Campagnola
9a9fc15873 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
af59296231 Reorganized directory structure to be more standard
Started new SVG exporter
Merged updates from ACQ4
2012-12-25 00:43:31 -05:00