PlotPy 2.3.4__tar.gz → 2.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {plotpy-2.3.4 → plotpy-2.4.0}/CHANGELOG.md +72 -1
- {plotpy-2.3.4/PlotPy.egg-info → plotpy-2.4.0}/PKG-INFO +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0/PlotPy.egg-info}/PKG-INFO +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/PlotPy.egg-info/SOURCES.txt +4 -1
- plotpy-2.4.0/PlotPy.egg-info/entry_points.txt +3 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/build.rst +2 -2
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/contribute.rst +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/platforms.rst +2 -2
- plotpy-2.4.0/doc/features/tools/overview.rst +28 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/tools/reference.rst +18 -8
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/requirements.rst +3 -6
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/__init__.py +1 -1
- plotpy-2.4.0/plotpy/data/icons/zlog.svg +144 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/interfaces/__init__.py +0 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/interfaces/items.py +0 -25
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/annotation.py +10 -5
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/grid.py +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/base.py +0 -84
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/image_items.py +32 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/label.py +6 -6
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/axis.py +7 -7
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/ellipse.py +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/marker.py +8 -8
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/point.py +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/polygon.py +5 -5
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/range.py +3 -3
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/rectangle.py +2 -2
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/segment.py +1 -1
- plotpy-2.4.0/plotpy/locale/fr/LC_MESSAGES/plotpy.mo +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/contrastadjustment.py +135 -78
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/plot/base.py +8 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/plot/manager.py +4 -0
- plotpy-2.4.0/plotpy/styles/axes.py +216 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/curve.py +1 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/errorbar.py +25 -12
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/image.py +216 -122
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/label.py +83 -38
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/shape.py +163 -51
- plotpy-2.4.0/plotpy/tests/benchmarks/__init__.py +20 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/benchmarks/test_benchmarks.py +47 -10
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/benchmarks/test_bigimages.py +2 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/benchmarks/test_loadtest.py +8 -2
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_customize_shape_tool.py +1 -1
- plotpy-2.4.0/plotpy/tests/tools/test_stats_tools.py +157 -0
- plotpy-2.4.0/plotpy/tests/tools/test_zaxislog.py +56 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_annotation_tools.py +4 -4
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_cursor_tools.py +3 -3
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_curve_tools.py +21 -33
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_display_coords_tool.py +4 -6
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_events.py +9 -29
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_line_cross_section_tool.py +3 -6
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_manipulate_selection.py +34 -45
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_multiline_tools.py +12 -12
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_oblique_cross_section_tool.py +3 -5
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_rect_zoom.py +3 -3
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/utils.py +13 -22
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/__init__.py +2 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/cross_section.py +1 -1
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/curve.py +62 -38
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/image.py +171 -31
- {plotpy-2.3.4 → plotpy-2.4.0}/pyproject.toml +4 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/contour2d.c +92 -92
- {plotpy-2.3.4 → plotpy-2.4.0}/src/histogram2d.c +93 -93
- {plotpy-2.3.4 → plotpy-2.4.0}/src/mandelbrot.c +93 -93
- plotpy-2.3.4/PlotPy.egg-info/entry_points.txt +0 -2
- plotpy-2.3.4/doc/features/tools/overview.rst +0 -82
- plotpy-2.3.4/plotpy/locale/fr/LC_MESSAGES/plotpy.mo +0 -0
- plotpy-2.3.4/plotpy/styles/axes.py +0 -143
- plotpy-2.3.4/plotpy/tests/widgets/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/LICENSE +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/MANIFEST.in +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/PlotPy.egg-info/dependency_links.txt +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/PlotPy.egg-info/requires.txt +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/PlotPy.egg-info/top_level.txt +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/README.md +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/colormaps/README.md +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/colormaps/_cm.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/colormaps/colormap.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/colormaps/matplotlib_cmaps.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/_static/favicon.ico +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/changelog.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/conf.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/guiqwt_to_plotpy.csv +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/guiqwt_to_plotpy.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/v1_to_guidata_v3.csv +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/v1_to_v2.csv +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/dev/v1_to_v2.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/colormapmanager.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/events.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/fit.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/fliprotate.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/imagefile.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/io.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/items/builder.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/items/examples.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/items/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/items/overview.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/items/reference.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/mathutils/colormaps.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/mathutils/geometry.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/mathutils/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/mathutils/scaler.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/panels/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/panels/overview.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/panels/reference.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/plot/examples.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/plot/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/plot/overview.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/plot/reference.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/pyplot.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/resizedialog.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/rotatecrop.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/selectdialog.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/signals.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/styles/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/styles/overview.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/styles/reference.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/tools/examples.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/features/tools/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/my_plot_manager.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/my_plot_manager.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/panorama.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/panorama.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/plot_widgets.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/plot_widgets.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/plotpy-banner.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/plotpy-vertical.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/__init__.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/computations.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/contrast.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/cross_section.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/cross_section2.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/dotarraydemo.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/filtertest1.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/filtertest2.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/fit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/get_point.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/hist2d.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/image_plot_tools.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/imagefilter.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/imagesuperp.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/imagexy.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/manager.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/mandelbrot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/pcolor.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/plot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/simple_dialog.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/simple_window.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/images/screenshots/transform.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/intro/examples.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/intro/index.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/intro/installation.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/intro/licenses.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/intro/motivation.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/intro/overview.rst +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/doc/update_requirements.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/annotation.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/curvemarker.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/image.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/label.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/plot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/builder/shape.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/config.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/constants.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/coords.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/colormaps_default.json +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/apply.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/arredit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/arrow_down.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/arrow_up.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/autorefresh.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/autoscale.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/axes.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/busy.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/cell_edit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/center.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/cmap_edit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/contrast.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/copy.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/copytoclipboard.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csapplylut.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csautoscale.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csection.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csection_a.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csection_line.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csection_oblique.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/csperimage.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curve_downsample.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curvestyles/dots.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curvestyles/lines.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curvestyles/steps.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curvestyles/sticks.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curvetypes/xfy.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/curvetypes/yfx.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/delete.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/edit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/edit_point_selection.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/edit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/edit_add.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/editcopy.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/editdelete.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/editpaste.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/fileimport.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/filesave.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/imshow.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/insert.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/plot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/editors/rename.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/eliminate_outliers.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/eraser.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/exit.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/expander_down.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/expander_right.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/export.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/file.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/fileclose.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/fileimport.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filenew.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/fileopen.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filesave.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filesaveas.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/doc.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/gif.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/html.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/jpg.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/pdf.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/png.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/pps.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/ps.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/tar.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/tgz.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/tif.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/txt.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/xls.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/filetypes/zip.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/font.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/full_range.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/funct.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/hcursor.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/hflip.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/imagestats.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/item_list.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/annotation.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/curve.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/errorbar.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/grid.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/histogram.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/histogram2d.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/image.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/label.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/legend.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/items/polygonmap.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/magnifier.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/cross.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/diamond.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/ellipse.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/hexagon.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/point.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/square.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/star.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/triangle_d.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/triangle_l.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/triangle_r.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/triangle_u.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markers/xcross.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markerstyles/cross_marker.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markerstyles/horiz_marker.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/markerstyles/vert_marker.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/mask/mask_circle.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/mask/mask_circle_outside.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/mask/mask_rectangle.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/mask/mask_rectangle_outside.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/mask/mask_tool.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/max.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/min.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/move.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/multipoint_selection.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/none.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/not_found.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/on_curve.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/bdiagpattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/crosspattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense1pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense2pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense3pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense4pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense5pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense6pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/dense7pattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/diagcrosspattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/fdiagpattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/horpattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/nobrush.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/solidpattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/patterns/verpattern.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/plotpy-banner.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/plotpy-vertical.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/plotpy.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/point_selection.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/print.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/python.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/quickview.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/rectangular_select.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/refresh.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/save_all.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/scales/lin_lin.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/scales/lin_log.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/scales/log_lin.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/scales/log_log.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/selection.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/settings.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shape.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/circle.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/contour.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/ellipse_shape.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/freeform.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/gtaxes.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/marker.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/oblique_rectangle.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/point_shape.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/polyline.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/rectangle.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/shapes/segment.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/snapshot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/styles/dash.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/styles/dashdot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/styles/dashdotdot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/styles/dot.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/styles/solid.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/trash.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/trimage_lock.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/trimage_unlock.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/vcursor.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/vflip.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/xcursor.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/xmax.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/xmin.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/data/icons/xrange.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/events.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/_generic_range_slider.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/_generic_slider.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/_labeled.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/_misc.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/_range_style.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/external/sliders/_sliders.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/interfaces/panel.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/interfaces/plotmanager.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/io.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/contour.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/curve/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/curve/base.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/curve/errorbar.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/histogram.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/filter.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/masked.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/misc.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/image/transform.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/polygonmap.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/base.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/items/shape/svg.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/lutrange.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/mathutils/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/mathutils/arrayfuncs.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/mathutils/colormap.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/mathutils/geometry.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/mathutils/scaler.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/base.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/csection/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/csection/csitem.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/csection/csplot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/csection/cswidget.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/panels/itemlist.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/plot/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/plot/interactive.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/plot/plotwidget.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/pyplot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/base.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/histogram.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/styles/polygonmap.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0/plotpy/tests}/conftest.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/data/brain.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/data/brain_cylinder.png +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/data/mr-brain.dcm +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/data/svg_target.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/data/svg_tool.svg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/data.py +0 -0
- {plotpy-2.3.4/plotpy/tests/benchmarks → plotpy-2.4.0/plotpy/tests/features}/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_auto_curve_image.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_autoscale_shapes.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_builder.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_colormap_editor.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_colormap_manager.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_computations.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_contrast.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_cursors.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_dicom_image.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_fit.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_image_coords.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_imagefilter.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_imagesuperp.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_loadsaveitems_hdf5.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_loadsaveitems_json.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_loadsaveitems_pickle.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_manager.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_no_auto_tools.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_plot_log.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_plot_types.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_plot_yreverse.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_pyplot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/features/test_resize.py +0 -0
- {plotpy-2.3.4/plotpy/tests/features → plotpy-2.4.0/plotpy/tests/items}/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_annotations.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_curves.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_curves_highdpi.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_hist2d.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_histogram.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_image.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_image_contour.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_image_masked.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_image_masked_xy.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_image_rgb.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_image_xy.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_mandelbrot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_pcolor.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_polygons.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_svgshapes.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/items/test_transform.py +0 -0
- {plotpy-2.3.4/plotpy/tests/items → plotpy-2.4.0/plotpy/tests/tools}/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_actiontool.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_cross_section.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_cross_section_line.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_cross_section_oblique.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_downsample_curve.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_edit_point.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_get_point.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_get_points.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_get_rectangle.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_get_rectangle_with_svg.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_get_segment.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/tools/test_image_plot_tools.py +0 -0
- {plotpy-2.3.4/plotpy/tests/tools → plotpy-2.4.0/plotpy/tests/unit}/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_aspect_ratio_tool.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_baseplot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_builder_annotation.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_builder_curve.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_builder_image.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_builder_shape.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_contour.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_fontparam.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_geometry.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_highprecisionxy.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_io.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_line.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_mask_tool.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_plot_curve.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_plot_image.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_seg_dist.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_styles.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/unit/test_tools_export.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/vistools.py +0 -0
- {plotpy-2.3.4/plotpy/tests/unit → plotpy-2.4.0/plotpy/tests/widgets}/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_dotarraydemo.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_filtertest1.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_filtertest2.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_fliprotate.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_plot_timecurve.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_qtdesigner.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_qtdesigner.ui +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_resize_dialog.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_rotatecrop.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_simple_dialog.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_simple_window.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tests/widgets/test_syncplot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/annotation.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/axes.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/base.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/cursor.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/item.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/label.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/misc.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/plot.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/selection.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/tools/shape.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/about.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/basetransform.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/colormap/__init__.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/colormap/_slider.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/colormap/editor.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/colormap/manager.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/colormap/widget.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/fit.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/fliprotate.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/imagefile.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/qtdesigner.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/resizedialog.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/rotatecrop.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy/widgets/selectdialog.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/plotpy-tests.desktop +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/qtdesigner/plotplugin.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/requirements.txt +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/setup.cfg +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/setup.py +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/arrays.hpp +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/contour2d.pyx +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/debug.hpp +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/histogram2d.pyx +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/mandelbrot.pyx +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/pcolor.cpp +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/points.hpp +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/scaler.cpp +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/scaler.hpp +0 -0
- {plotpy-2.3.4 → plotpy-2.4.0}/src/traits.hpp +0 -0
|
@@ -1,5 +1,77 @@
|
|
|
1
1
|
# Changelog #
|
|
2
2
|
|
|
3
|
+
## Version 2.4.0 ##
|
|
4
|
+
|
|
5
|
+
In this release, test coverage is 79%.
|
|
6
|
+
|
|
7
|
+
💥 New features / Enhancements:
|
|
8
|
+
|
|
9
|
+
* Contrast adjustment panel:
|
|
10
|
+
* New layout: the vertical toolbar (which was constrained in a small area on the
|
|
11
|
+
right side of the panel) is now a horizontal toolbar at the top of the panel,
|
|
12
|
+
beside the title
|
|
13
|
+
* New "Set range" button: allows the user to set manually the minimum and maximum
|
|
14
|
+
values of the histogram range
|
|
15
|
+
* New Z-axis logarithmic scale feature:
|
|
16
|
+
* Added new tool `ZAxisLogTool` to toggle the Z-axis logarithmic scale
|
|
17
|
+
* The tool is registered by default in the plot widget, like the `ColormapTool`
|
|
18
|
+
* When enabled, the active image item is displayed after applying a base-10
|
|
19
|
+
logarithm to its pixel values
|
|
20
|
+
* Curve statistics tool `CurveStatsTool` is now customizable:
|
|
21
|
+
* When adding the tool: `plot_widget.manager.add_tool(CurveStatsTool, labelfuncs=(...))`
|
|
22
|
+
* Or after: `plot_widget.manager.get_tool(CurveStatsTool).set_labelfuncs(...)`
|
|
23
|
+
* The `labelfuncs` parameter is a list of tuples `(label, func)` where `label` is the
|
|
24
|
+
label displayed in the statistics table, and `func` is a function that takes the
|
|
25
|
+
curve data and returns the corresponding statistic value (see the documentation for
|
|
26
|
+
more details)
|
|
27
|
+
* Image statistics tool `ImageStatsTool` is now customizable:
|
|
28
|
+
* When adding the tool: `plot_widget.manager.add_tool(ImageStatsTool, stats_func=...)`
|
|
29
|
+
* Or after: `plot_widget.manager.get_tool(ImageStatsTool).set_stats_func(...)`
|
|
30
|
+
* The `stats_func` parameter is a function that takes the image item and selected
|
|
31
|
+
rectangle coordinates, and returns a string with the statistics to display
|
|
32
|
+
* New `SIG_AXIS_PARAMETERS_CHANGED` signal emitted by `BasePlot` when the axes parameters
|
|
33
|
+
are changed (e.g. when the axes are inverted, or the scale is changed)
|
|
34
|
+
* New "Reverse X axis" feature:
|
|
35
|
+
* Added new tool `ReverseXAxisTool` to toggle the X-axis direction
|
|
36
|
+
* The tool is registered by default in the plot widget, like its Y-axis counterpart
|
|
37
|
+
|
|
38
|
+
🛠️ Bug fixes:
|
|
39
|
+
|
|
40
|
+
* Contrast adjustment panel:
|
|
41
|
+
* Fixed histogram update issues when no image was currently selected (even if the
|
|
42
|
+
an image was displayed and was selected before)
|
|
43
|
+
* Histogram range was not updated when either the minimum or maximum value was set
|
|
44
|
+
using the "Minimum value" or "Maximum value" buttons (which have been renamed to
|
|
45
|
+
"Min." and "Max." in this release)
|
|
46
|
+
* Histogram range was not updated when the "Set full range" button was clicked
|
|
47
|
+
* Image parameters: contrast range was not updated when the image Z axis bounds were
|
|
48
|
+
changed using the "Parameters" dialog
|
|
49
|
+
|
|
50
|
+
🧹 API cleanup:
|
|
51
|
+
|
|
52
|
+
* Deprecated `AnnotationParam.update_annotation` method: use `update_item` instead
|
|
53
|
+
* Deprecated `AxesShapeParam.update_axes` method: use `update_item` instead
|
|
54
|
+
* Deprecated `AxesParam.update_axes` method: use `update_item` instead
|
|
55
|
+
* Deprecated `ImageAxesParam.update_axes` method: use `update_item` instead
|
|
56
|
+
* Deprecated `LabelParam.update_label` method: use `update_item` instead
|
|
57
|
+
* Deprecated `MarkerParam.update_marker` method: use `update_item` instead
|
|
58
|
+
* Deprecated `RangeShapeParam.update_range` method: use `update_item` instead
|
|
59
|
+
* Deprecated `ShapeParam.update_shape` method: use `update_item` instead
|
|
60
|
+
|
|
61
|
+
## Version 2.3.5 ##
|
|
62
|
+
|
|
63
|
+
This release is mainly intended to fix the Windows binary distribution, which was not
|
|
64
|
+
supporting NumPy 2.0.
|
|
65
|
+
|
|
66
|
+
🛠️ Bug fixes:
|
|
67
|
+
|
|
68
|
+
* Moved back `conftest.py` to the `tests` folder (was in the root folder), so that
|
|
69
|
+
`pytest` can be executed with proper configuration when running the test suite
|
|
70
|
+
from the installed package
|
|
71
|
+
|
|
72
|
+
* Removed benchmarks from automated test suite (not relevant for the end user):
|
|
73
|
+
added `plotpy-benchmarks` script to run the benchmarks
|
|
74
|
+
|
|
3
75
|
## Version 2.3.4 ##
|
|
4
76
|
|
|
5
77
|
In this release, test coverage is 79%.
|
|
@@ -69,7 +141,6 @@ in version 2.3.1. The latter is a fugitive release that was not announced.
|
|
|
69
141
|
* Fixed issue with oblique averaged cross section computation (`AttributeError` when
|
|
70
142
|
clicking on the empty cross section plot)
|
|
71
143
|
|
|
72
|
-
|
|
73
144
|
## Version 2.3.0 ##
|
|
74
145
|
|
|
75
146
|
In this release, test coverage is 75%.
|
|
@@ -2,7 +2,6 @@ CHANGELOG.md
|
|
|
2
2
|
LICENSE
|
|
3
3
|
MANIFEST.in
|
|
4
4
|
README.md
|
|
5
|
-
conftest.py
|
|
6
5
|
plotpy-tests.desktop
|
|
7
6
|
pyproject.toml
|
|
8
7
|
requirements.txt
|
|
@@ -200,6 +199,7 @@ plotpy/data/icons/xcursor.png
|
|
|
200
199
|
plotpy/data/icons/xmax.png
|
|
201
200
|
plotpy/data/icons/xmin.png
|
|
202
201
|
plotpy/data/icons/xrange.png
|
|
202
|
+
plotpy/data/icons/zlog.svg
|
|
203
203
|
plotpy/data/icons/curvestyles/dots.png
|
|
204
204
|
plotpy/data/icons/curvestyles/lines.png
|
|
205
205
|
plotpy/data/icons/curvestyles/steps.png
|
|
@@ -366,6 +366,7 @@ plotpy/styles/label.py
|
|
|
366
366
|
plotpy/styles/polygonmap.py
|
|
367
367
|
plotpy/styles/shape.py
|
|
368
368
|
plotpy/tests/__init__.py
|
|
369
|
+
plotpy/tests/conftest.py
|
|
369
370
|
plotpy/tests/data.py
|
|
370
371
|
plotpy/tests/vistools.py
|
|
371
372
|
plotpy/tests/benchmarks/__init__.py
|
|
@@ -432,6 +433,8 @@ plotpy/tests/tools/test_get_rectangle.py
|
|
|
432
433
|
plotpy/tests/tools/test_get_rectangle_with_svg.py
|
|
433
434
|
plotpy/tests/tools/test_get_segment.py
|
|
434
435
|
plotpy/tests/tools/test_image_plot_tools.py
|
|
436
|
+
plotpy/tests/tools/test_stats_tools.py
|
|
437
|
+
plotpy/tests/tools/test_zaxislog.py
|
|
435
438
|
plotpy/tests/unit/__init__.py
|
|
436
439
|
plotpy/tests/unit/test_annotation_tools.py
|
|
437
440
|
plotpy/tests/unit/test_aspect_ratio_tool.py
|
|
@@ -29,11 +29,11 @@ To run the unittests, you need:
|
|
|
29
29
|
|
|
30
30
|
Then run the following command::
|
|
31
31
|
|
|
32
|
-
pytest
|
|
32
|
+
pytest plotpy
|
|
33
33
|
|
|
34
34
|
To run test with coverage support, use the following command::
|
|
35
35
|
|
|
36
|
-
pytest -v --cov --cov-report=html
|
|
36
|
+
pytest -v --cov --cov-report=html plotpy
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
Code formatting
|
|
@@ -72,7 +72,7 @@ That's it, you can now run the tests using the following command:
|
|
|
72
72
|
|
|
73
73
|
.. code-block:: bash
|
|
74
74
|
|
|
75
|
-
pytest
|
|
75
|
+
pytest plotpy
|
|
76
76
|
|
|
77
77
|
If you want to rely on Visual Studio Code for editing and take advantage of the
|
|
78
78
|
project settings and tasks, you will need to set the following environment variable:
|
|
@@ -160,4 +160,4 @@ That's it, you can now run the tests using the following command:
|
|
|
160
160
|
|
|
161
161
|
.. code-block:: bash
|
|
162
162
|
|
|
163
|
-
pytest
|
|
163
|
+
pytest plotpy
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
Overview
|
|
2
|
+
--------
|
|
3
|
+
|
|
4
|
+
A `plot tool` is an object providing various features to a plotting widget
|
|
5
|
+
(:py:class:`.BasePlot`):
|
|
6
|
+
|
|
7
|
+
* Buttons,
|
|
8
|
+
* Menus,
|
|
9
|
+
* Selection tools,
|
|
10
|
+
* Image I/O tools,
|
|
11
|
+
* Etc.
|
|
12
|
+
|
|
13
|
+
Before being used, a tool has to be registered to a plotting widget's manager,
|
|
14
|
+
i.e. an instance of the :py:class:`.PlotManager` class (see :ref:`plot`
|
|
15
|
+
for more details).
|
|
16
|
+
|
|
17
|
+
The :py:class:`.BasePlot` widget do not provide any :py:class:`.PlotManager`:
|
|
18
|
+
the manager has to be created separately. On the contrary, the ready-to-use widget
|
|
19
|
+
:py:class:`.PlotWidget` are higher-level plotting widgets with
|
|
20
|
+
integrated manager, tools and panels.
|
|
21
|
+
|
|
22
|
+
.. seealso::
|
|
23
|
+
|
|
24
|
+
:ref:`plot`
|
|
25
|
+
Ready-to-use curve and image plotting widgets and dialog boxes
|
|
26
|
+
|
|
27
|
+
:ref:`items`
|
|
28
|
+
Plot items: curves, images, markers, etc.
|
|
@@ -19,14 +19,6 @@ Base classes
|
|
|
19
19
|
.. autoclass:: plotpy.tools.PanelTool
|
|
20
20
|
:members:
|
|
21
21
|
|
|
22
|
-
Selection tools
|
|
23
|
-
^^^^^^^^^^^^^^^
|
|
24
|
-
|
|
25
|
-
.. autoclass:: plotpy.tools.SelectTool
|
|
26
|
-
:members:
|
|
27
|
-
.. autoclass:: plotpy.tools.SelectPointTool
|
|
28
|
-
:members:
|
|
29
|
-
|
|
30
22
|
Plot tools
|
|
31
23
|
^^^^^^^^^^
|
|
32
24
|
|
|
@@ -44,6 +36,8 @@ Plot tools
|
|
|
44
36
|
Item tools
|
|
45
37
|
^^^^^^^^^^
|
|
46
38
|
|
|
39
|
+
.. autoclass:: plotpy.tools.SelectTool
|
|
40
|
+
:members:
|
|
47
41
|
.. autoclass:: plotpy.tools.ItemListPanelTool
|
|
48
42
|
:members:
|
|
49
43
|
.. autoclass:: plotpy.tools.SaveItemsTool
|
|
@@ -93,13 +87,29 @@ Shape tools
|
|
|
93
87
|
.. autoclass:: plotpy.tools.HRangeTool
|
|
94
88
|
:members:
|
|
95
89
|
|
|
90
|
+
Curve tools
|
|
91
|
+
^^^^^^^^^^^
|
|
92
|
+
|
|
93
|
+
.. autoclass:: plotpy.tools.CurveStatsTool
|
|
94
|
+
:members:
|
|
95
|
+
.. autoclass:: plotpy.tools.SelectPointTool
|
|
96
|
+
:members:
|
|
97
|
+
.. autoclass:: plotpy.tools.SelectPointsTool
|
|
98
|
+
:members:
|
|
99
|
+
.. autoclass:: plotpy.tools.EditPointTool
|
|
100
|
+
:members:
|
|
101
|
+
|
|
96
102
|
Image tools
|
|
97
103
|
^^^^^^^^^^^
|
|
98
104
|
|
|
105
|
+
.. autoclass:: plotpy.tools.ImageStatsTool
|
|
106
|
+
:members:
|
|
99
107
|
.. autoclass:: plotpy.tools.RotationCenterTool
|
|
100
108
|
:members:
|
|
101
109
|
.. autoclass:: plotpy.tools.ReverseYAxisTool
|
|
102
110
|
:members:
|
|
111
|
+
.. autoclass:: plotpy.tools.ZAxisLogTool
|
|
112
|
+
:members:
|
|
103
113
|
.. autoclass:: plotpy.tools.AspectRatioTool
|
|
104
114
|
:members:
|
|
105
115
|
.. autoclass:: plotpy.tools.ContrastPanelTool
|
|
@@ -9,7 +9,7 @@ The :mod:`plotpy` package requires the following Python modules:
|
|
|
9
9
|
- Summary
|
|
10
10
|
* - Python
|
|
11
11
|
- >=3.8, <4
|
|
12
|
-
-
|
|
12
|
+
- Python programming language
|
|
13
13
|
* - guidata
|
|
14
14
|
- >=3.4
|
|
15
15
|
- Automatic GUI generation for easy dataset editing and display
|
|
@@ -41,12 +41,9 @@ Optional modules for development:
|
|
|
41
41
|
* - Name
|
|
42
42
|
- Version
|
|
43
43
|
- Summary
|
|
44
|
-
* -
|
|
45
|
-
-
|
|
46
|
-
- The uncompromising code formatter.
|
|
47
|
-
* - isort
|
|
44
|
+
* - ruff
|
|
48
45
|
-
|
|
49
|
-
-
|
|
46
|
+
- An extremely fast Python linter and code formatter, written in Rust.
|
|
50
47
|
* - pylint
|
|
51
48
|
-
|
|
52
49
|
- python code static checker
|
|
@@ -20,7 +20,7 @@ External resources:
|
|
|
20
20
|
.. _GitHub: https://github.com/PierreRaybaut/plotpy
|
|
21
21
|
"""
|
|
22
22
|
|
|
23
|
-
__version__ = "2.
|
|
23
|
+
__version__ = "2.4.0"
|
|
24
24
|
__VERSION__ = tuple([int(number) for number in __version__.split(".")])
|
|
25
25
|
|
|
26
26
|
# --- Important note: DATAPATH and LOCALEPATH are used by guidata.configtools
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<svg
|
|
3
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
4
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
|
5
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
6
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
|
7
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
8
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
9
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
10
|
+
role="img"
|
|
11
|
+
focusable="false"
|
|
12
|
+
aria-hidden="true"
|
|
13
|
+
viewBox="0 0 14 14"
|
|
14
|
+
version="1.1"
|
|
15
|
+
id="svg3733"
|
|
16
|
+
sodipodi:docname="zlog.svg"
|
|
17
|
+
inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
|
|
18
|
+
<metadata
|
|
19
|
+
id="metadata3739">
|
|
20
|
+
<rdf:RDF>
|
|
21
|
+
<cc:Work
|
|
22
|
+
rdf:about="">
|
|
23
|
+
<dc:format>image/svg+xml</dc:format>
|
|
24
|
+
<dc:type
|
|
25
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
26
|
+
</cc:Work>
|
|
27
|
+
</rdf:RDF>
|
|
28
|
+
</metadata>
|
|
29
|
+
<defs
|
|
30
|
+
id="defs3737" />
|
|
31
|
+
<sodipodi:namedview
|
|
32
|
+
pagecolor="#ffffff"
|
|
33
|
+
bordercolor="#666666"
|
|
34
|
+
borderopacity="1"
|
|
35
|
+
objecttolerance="10"
|
|
36
|
+
gridtolerance="10"
|
|
37
|
+
guidetolerance="10"
|
|
38
|
+
inkscape:pageopacity="0"
|
|
39
|
+
inkscape:pageshadow="2"
|
|
40
|
+
inkscape:window-width="1920"
|
|
41
|
+
inkscape:window-height="1017"
|
|
42
|
+
id="namedview3735"
|
|
43
|
+
showgrid="false"
|
|
44
|
+
inkscape:zoom="42.830468"
|
|
45
|
+
inkscape:cx="11.19054"
|
|
46
|
+
inkscape:cy="4.4544012"
|
|
47
|
+
inkscape:window-x="-8"
|
|
48
|
+
inkscape:window-y="-8"
|
|
49
|
+
inkscape:window-maximized="1"
|
|
50
|
+
inkscape:current-layer="svg3733" />
|
|
51
|
+
<rect
|
|
52
|
+
style="fill:#d4aa00"
|
|
53
|
+
id="rect3751"
|
|
54
|
+
width="0.51365304"
|
|
55
|
+
height="13.354979"
|
|
56
|
+
x="12.132974"
|
|
57
|
+
y="0.27145514" />
|
|
58
|
+
<text
|
|
59
|
+
xml:space="preserve"
|
|
60
|
+
style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
61
|
+
x="-1.0039581"
|
|
62
|
+
y="8.723382"
|
|
63
|
+
id="text3743"><tspan
|
|
64
|
+
sodipodi:role="line"
|
|
65
|
+
id="tspan3741"
|
|
66
|
+
x="-1.0039581"
|
|
67
|
+
y="8.723382"
|
|
68
|
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.33333302px;font-family:'Lucida Handwriting';-inkscape-font-specification:'Lucida Handwriting'">z</tspan></text>
|
|
69
|
+
<text
|
|
70
|
+
xml:space="preserve"
|
|
71
|
+
style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
72
|
+
x="4.5061374"
|
|
73
|
+
y="11.2683"
|
|
74
|
+
id="text3747"><tspan
|
|
75
|
+
sodipodi:role="line"
|
|
76
|
+
id="tspan3745"
|
|
77
|
+
x="4.5061374"
|
|
78
|
+
y="11.2683"
|
|
79
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:3.33333325px;font-family:Tahoma;-inkscape-font-specification:'Tahoma Bold';fill:#ff6600">LOG</tspan></text>
|
|
80
|
+
<rect
|
|
81
|
+
style="fill:#d4aa00;stroke-width:0.34224674"
|
|
82
|
+
id="rect3751-2"
|
|
83
|
+
width="0.51365304"
|
|
84
|
+
height="1.5643065"
|
|
85
|
+
x="10.302919"
|
|
86
|
+
y="6.5584002"
|
|
87
|
+
transform="rotate(-30)" />
|
|
88
|
+
<rect
|
|
89
|
+
style="fill:#d4aa00;stroke-width:0.34224674"
|
|
90
|
+
id="rect3751-2-6"
|
|
91
|
+
width="0.51365304"
|
|
92
|
+
height="1.5643065"
|
|
93
|
+
x="10.643191"
|
|
94
|
+
y="-5.8313999"
|
|
95
|
+
transform="rotate(30)" />
|
|
96
|
+
<rect
|
|
97
|
+
style="fill:#d4aa00;stroke-width:0.33449677"
|
|
98
|
+
id="rect3751-8"
|
|
99
|
+
width="0.51365304"
|
|
100
|
+
height="1.4942629"
|
|
101
|
+
x="12.599127"
|
|
102
|
+
y="-13.168196"
|
|
103
|
+
transform="rotate(90)" />
|
|
104
|
+
<rect
|
|
105
|
+
style="fill:#d4aa00;stroke-width:0.33449677"
|
|
106
|
+
id="rect3751-8-5"
|
|
107
|
+
width="0.51365304"
|
|
108
|
+
height="1.4942629"
|
|
109
|
+
x="8.8401213"
|
|
110
|
+
y="-13.168196"
|
|
111
|
+
transform="rotate(90)" />
|
|
112
|
+
<rect
|
|
113
|
+
style="fill:#d4aa00;stroke-width:0.33449677"
|
|
114
|
+
id="rect3751-8-5-0"
|
|
115
|
+
width="0.51365304"
|
|
116
|
+
height="1.4942629"
|
|
117
|
+
x="5.8282475"
|
|
118
|
+
y="-13.168196"
|
|
119
|
+
transform="rotate(90)" />
|
|
120
|
+
<rect
|
|
121
|
+
style="fill:#d4aa00;stroke-width:0.33449677"
|
|
122
|
+
id="rect3751-8-5-4"
|
|
123
|
+
width="0.51365304"
|
|
124
|
+
height="1.4942629"
|
|
125
|
+
x="3.8903742"
|
|
126
|
+
y="-13.168196"
|
|
127
|
+
transform="rotate(90)" />
|
|
128
|
+
<rect
|
|
129
|
+
style="fill:#d4aa00;stroke-width:0.33449677"
|
|
130
|
+
id="rect3751-8-5-44"
|
|
131
|
+
width="0.51365304"
|
|
132
|
+
height="1.4942629"
|
|
133
|
+
x="2.9798076"
|
|
134
|
+
y="-13.168196"
|
|
135
|
+
transform="rotate(90)" />
|
|
136
|
+
<rect
|
|
137
|
+
style="fill:#d4aa00;stroke-width:0.33449677"
|
|
138
|
+
id="rect3751-8-5-5"
|
|
139
|
+
width="0.51365304"
|
|
140
|
+
height="1.4942629"
|
|
141
|
+
x="2.3027196"
|
|
142
|
+
y="-13.168196"
|
|
143
|
+
transform="rotate(90)" />
|
|
144
|
+
</svg>
|
|
@@ -148,31 +148,6 @@ class IExportROIImageItemType(IItemType):
|
|
|
148
148
|
pass
|
|
149
149
|
|
|
150
150
|
|
|
151
|
-
class IStatsImageItemType(IItemType):
|
|
152
|
-
"""An image supporting stats computations"""
|
|
153
|
-
|
|
154
|
-
def get_stats(
|
|
155
|
-
self,
|
|
156
|
-
x0: float,
|
|
157
|
-
y0: float,
|
|
158
|
-
x1: float,
|
|
159
|
-
y1: float,
|
|
160
|
-
show_surface: bool = False,
|
|
161
|
-
show_integral: bool = False,
|
|
162
|
-
) -> str:
|
|
163
|
-
"""Return formatted string with stats on image rectangular area
|
|
164
|
-
(output should be compatible with AnnotatedShape.get_infos)
|
|
165
|
-
|
|
166
|
-
Args:
|
|
167
|
-
x0: X0
|
|
168
|
-
y0: Y0
|
|
169
|
-
x1: X1
|
|
170
|
-
y1: Y1
|
|
171
|
-
show_surface: Show surface (Default value = False)
|
|
172
|
-
show_integral: Show integral (Default value = False)
|
|
173
|
-
"""
|
|
174
|
-
|
|
175
|
-
|
|
176
151
|
class ICSImageItemType(IItemType):
|
|
177
152
|
"""An image supporting X/Y cross sections"""
|
|
178
153
|
|
|
@@ -75,7 +75,7 @@ class AnnotatedShape(AbstractShape):
|
|
|
75
75
|
)
|
|
76
76
|
else:
|
|
77
77
|
self.annotationparam = annotationparam
|
|
78
|
-
self.annotationparam.
|
|
78
|
+
self.annotationparam.update_item(self)
|
|
79
79
|
self.setIcon(get_icon("annotation.png"))
|
|
80
80
|
|
|
81
81
|
def types(self) -> tuple[type[IItemType], ...]:
|
|
@@ -98,8 +98,8 @@ class AnnotatedShape(AbstractShape):
|
|
|
98
98
|
shape, label, param = state
|
|
99
99
|
self.shape = shape
|
|
100
100
|
self.label = label
|
|
101
|
-
self.annotationparam = param
|
|
102
|
-
self.annotationparam.
|
|
101
|
+
self.annotationparam: AnnotationParam = param
|
|
102
|
+
self.annotationparam.update_item(self)
|
|
103
103
|
|
|
104
104
|
def serialize(
|
|
105
105
|
self,
|
|
@@ -125,7 +125,7 @@ class AnnotatedShape(AbstractShape):
|
|
|
125
125
|
"""
|
|
126
126
|
self.annotationparam = AnnotationParam(_("Annotation"), icon="annotation.png")
|
|
127
127
|
reader.read("annotationparam", instance=self.annotationparam)
|
|
128
|
-
self.annotationparam.
|
|
128
|
+
self.annotationparam.update_item(self)
|
|
129
129
|
self.shape.deserialize(reader)
|
|
130
130
|
self.label.deserialize(reader)
|
|
131
131
|
|
|
@@ -434,7 +434,7 @@ class AnnotatedShape(AbstractShape):
|
|
|
434
434
|
update_dataset(
|
|
435
435
|
self.annotationparam, itemparams.get("AnnotationParam"), visible_only=True
|
|
436
436
|
)
|
|
437
|
-
self.annotationparam.
|
|
437
|
+
self.annotationparam.update_item(self)
|
|
438
438
|
self.plot().SIG_ANNOTATION_CHANGED.emit(self)
|
|
439
439
|
|
|
440
440
|
# Autoscalable types API
|
|
@@ -471,6 +471,7 @@ class AnnotatedPoint(AnnotatedShape):
|
|
|
471
471
|
|
|
472
472
|
def __init__(self, x=0, y=0, annotationparam=None):
|
|
473
473
|
AnnotatedShape.__init__(self, annotationparam)
|
|
474
|
+
self.shape: PointShape
|
|
474
475
|
self.set_pos(x, y)
|
|
475
476
|
self.setIcon(get_icon("point_shape.png"))
|
|
476
477
|
|
|
@@ -526,6 +527,7 @@ class AnnotatedSegment(AnnotatedShape):
|
|
|
526
527
|
|
|
527
528
|
def __init__(self, x1=0, y1=0, x2=0, y2=0, annotationparam=None):
|
|
528
529
|
AnnotatedShape.__init__(self, annotationparam)
|
|
530
|
+
self.shape: SegmentShape
|
|
529
531
|
self.set_rect(x1, y1, x2, y2)
|
|
530
532
|
self.setIcon(get_icon("segment.png"))
|
|
531
533
|
|
|
@@ -585,6 +587,7 @@ class AnnotatedRectangle(AnnotatedShape):
|
|
|
585
587
|
|
|
586
588
|
def __init__(self, x1=0, y1=0, x2=0, y2=0, annotationparam=None):
|
|
587
589
|
AnnotatedShape.__init__(self, annotationparam)
|
|
590
|
+
self.shape: RectangleShape
|
|
588
591
|
self.set_rect(x1, y1, x2, y2)
|
|
589
592
|
self.setIcon(get_icon("rectangle.png"))
|
|
590
593
|
|
|
@@ -645,6 +648,7 @@ class AnnotatedObliqueRectangle(AnnotatedRectangle):
|
|
|
645
648
|
self, x0=0, y0=0, x1=0, y1=0, x2=0, y2=0, x3=0, y3=0, annotationparam=None
|
|
646
649
|
):
|
|
647
650
|
AnnotatedShape.__init__(self, annotationparam)
|
|
651
|
+
self.shape: ObliqueRectangleShape
|
|
648
652
|
self.set_rect(x0, y0, x1, y1, x2, y2, x3, y3)
|
|
649
653
|
self.setIcon(get_icon("oblique_rectangle.png"))
|
|
650
654
|
|
|
@@ -740,6 +744,7 @@ class AnnotatedEllipse(AnnotatedShape):
|
|
|
740
744
|
|
|
741
745
|
def __init__(self, x1=0, y1=0, x2=0, y2=0, annotationparam=None):
|
|
742
746
|
AnnotatedShape.__init__(self, annotationparam)
|
|
747
|
+
self.shape: EllipseShape
|
|
743
748
|
self.set_xdiameter(x1, y1, x2, y2)
|
|
744
749
|
self.setIcon(get_icon("ellipse_shape.png"))
|
|
745
750
|
self.switch_to_ellipse()
|