Version 2.4¶
PlotPy Version 2.4.2 (2024-07-16)¶
In this release, test coverage is 79%.
🛠️ Bug fixes:
-
Debian’s Python team has reported that the contour unit test was failing on
arm64architectureThis is the opportunity to replace the
contour2dCython extension by scikit-image’sfind_contoursfunction, thus avoiding to reinvent the wheel by relying on a more robust and tested implementationThe
contour2dCython extension is removed from the source codeThe contour related features remain the same, but the implementation is now based on scikit-image’s
find_contoursfunctionThe scikit-image dependency is added to the package requirements
PlotPy Version 2.4.1 (2024-07-09)¶
In this release, test coverage is 79%.
🛠️ Bug fixes:
Contrast adjustment panel:
A regression was introduced in V2.0.0: levels histogram was no longer removed from contrast adjustment panel when the associated image was removed from the plot
This is now fixed: when an image is removed, the histogram is removed as well and the contrast panel is refreshed (which was not the case even before the regression)
PlotPy Version 2.4.0 (2024-06-26)¶
In this release, test coverage is 79%.
💥 New features / Enhancements:
Contrast adjustment panel:
New layout: the vertical toolbar (which was constrained in a small area on the right side of the panel) is now a horizontal toolbar at the top of the panel, beside the title
New “Set range” button: allows the user to set manually the minimum and maximum values of the histogram range
New Z-axis logarithmic scale feature:
Added new tool
ZAxisLogToolto toggle the Z-axis logarithmic scaleThe tool is registered by default in the plot widget, like the
ColormapToolWhen enabled, the active image item is displayed after applying a base-10 logarithm to its pixel values
Curve statistics tool
CurveStatsToolis now customizable:When adding the tool:
plot_widget.manager.add_tool(CurveStatsTool, labelfuncs=(...))Or after:
plot_widget.manager.get_tool(CurveStatsTool).set_labelfuncs(...)The
labelfuncsparameter is a list of tuples(label, func)wherelabelis the label displayed in the statistics table, andfuncis a function that takes the curve data and returns the corresponding statistic value (see the documentation for more details)
Image statistics tool
ImageStatsToolis now customizable:When adding the tool:
plot_widget.manager.add_tool(ImageStatsTool, stats_func=...)Or after:
plot_widget.manager.get_tool(ImageStatsTool).set_stats_func(...)The
stats_funcparameter is a function that takes the image item and selected rectangle coordinates, and returns a string with the statistics to display
New
SIG_AXIS_PARAMETERS_CHANGEDsignal emitted byBasePlotwhen the axes parameters are changed (e.g. when the axes are inverted, or the scale is changed)New “Reverse X axis” feature:
Added new tool
ReverseXAxisToolto toggle the X-axis directionThe tool is registered by default in the plot widget, like its Y-axis counterpart
🛠️ Bug fixes:
Contrast adjustment panel:
Fixed histogram update issues when no image was currently selected (even if the an image was displayed and was selected before)
Histogram range was not updated when either the minimum or maximum value was set using the “Minimum value” or “Maximum value” buttons (which have been renamed to “Min.” and “Max.” in this release)
Histogram range was not updated when the “Set full range” button was clicked
Image parameters: contrast range was not updated when the image Z axis bounds were changed using the “Parameters” dialog
🧹 API cleanup:
Deprecated
AnnotationParam.update_annotationmethod: useupdate_iteminsteadDeprecated
AxesShapeParam.update_axesmethod: useupdate_iteminsteadDeprecated
AxesParam.update_axesmethod: useupdate_iteminsteadDeprecated
ImageAxesParam.update_axesmethod: useupdate_iteminsteadDeprecated
LabelParam.update_labelmethod: useupdate_iteminsteadDeprecated
MarkerParam.update_markermethod: useupdate_iteminsteadDeprecated
RangeShapeParam.update_rangemethod: useupdate_iteminsteadDeprecated
ShapeParam.update_shapemethod: useupdate_iteminstead