SciQLopPlots 0.10.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.
- sciqlopplots-0.10.0/.clang-format +32 -0
- sciqlopplots-0.10.0/.github/workflows/build_wheels.yml +119 -0
- sciqlopplots-0.10.0/.github/workflows/test.yml +12 -0
- sciqlopplots-0.10.0/.gitignore +18 -0
- sciqlopplots-0.10.0/COPYING +33 -0
- sciqlopplots-0.10.0/Docker/Dockerfile +10 -0
- sciqlopplots-0.10.0/Docker/build.sh +3 -0
- sciqlopplots-0.10.0/PKG-INFO +100 -0
- sciqlopplots-0.10.0/README.md +44 -0
- sciqlopplots-0.10.0/SciQLopPlots/__init__.py +58 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/SciQLopPlotsBindings/meson.build +17 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/_QCustomPlot.hpp +37 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/bindings.h +54 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/bindings.xml +530 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/helper_scripts/rpath-helper.py +71 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/helper_scripts/shiboken-gen.py +86 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/helper_scripts/shiboken-helper.py +108 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/helper_scripts/src_list.py +69 -0
- sciqlopplots-0.10.0/SciQLopPlots/bindings/snippets.cpp +80 -0
- sciqlopplots-0.10.0/SciQLopPlots/meson.build +268 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/DataProducer/DataProducer.hpp +206 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Debug.hpp +48 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/DragNDrop/PlaceHolderManager.hpp +184 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/DragNDrop/PlotDragNDropCallback.hpp +48 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Icons/icons.hpp +44 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/InspectorBase.hpp +46 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopColorMapInspector.hpp +59 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopGraphComponentInspector.hpp +72 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopGraphInterfaceInspector.hpp +69 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopMultiPlotPanelInspector.hpp +63 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopNDProjectionCurvesInspector.hpp +69 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopNDProjectionPlotInspector.hpp +59 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors/SciQLopPlotInspector.hpp +59 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Inspectors.hpp +73 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Model/Model.hpp +63 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/Model/Node.hpp +104 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/Delegates/BooleanDelegate.hpp +44 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/Delegates/ColorDelegate.hpp +51 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/Delegates/ColorGradientDelegate.hpp +63 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/Delegates/LegendDelegate.hpp +47 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/Delegates/LineDelegate.hpp +50 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/SciQLopColorMapDelegate.hpp +39 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/SciQLopGraphComponentDelegate.hpp +42 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/SciQLopGraphDelegate.hpp +38 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/SciQLopMultiPlotPanelDelegate.hpp +39 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/SciQLopPlotAxisDelegate.hpp +39 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertiesDelegates/SciQLopPlotDelegate.hpp +39 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertyDelegateBase.hpp +56 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/PropertyDelegates.hpp +98 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/View/InspectorView.hpp +42 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/View/PropertiesPanel.hpp +37 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/View/PropertiesView.hpp +36 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Inspector/View/TreeView.hpp +36 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Items/QCPItemRichText.hpp +42 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Items/SciQLopPixmapItem.hpp +87 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Items/SciQLopPlotItem.hpp +106 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Items/SciQLopTracer.hpp +182 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Items/SciQLopVerticalSpan.hpp +461 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/AxisSynchronizer.hpp +46 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/MultiPlotsVSpan.hpp +149 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/SciQLopMultiPlotObject.hpp +45 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/SciQLopMultiPlotPanel.hpp +217 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/SciQLopMultiTimeSeriesPlotPanel.hpp +0 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/SciQLopPlotCollection.hpp +334 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/SciQLopPlotContainer.hpp +181 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/TimeAxisSynchronizer.hpp +38 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/VPlotsAlign.hpp +36 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/MultiPlots/XAxisSynchronizer.hpp +37 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/QCPAbstractPlottableWrapper.hpp +143 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/Resamplers/AbstractResampler.hpp +249 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/Resamplers/SciQLopColorMapResampler.hpp +48 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/Resamplers/SciQLopCurveResampler.hpp +42 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/Resamplers/SciQLopLineGraphResampler.hpp +95 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopColorMap.hpp +187 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopCurve.hpp +114 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopGraphComponent.hpp +288 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopGraphComponentInterface.hpp +124 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopGraphInterface.hpp +231 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopLineGraph.hpp +109 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Plotables/SciQLopNDProjectionCurves.hpp +72 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Products/ProductsModel.hpp +71 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Products/ProductsNode.hpp +111 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Products/ProductsView.hpp +46 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Profiling.hpp +51 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Python/PythonInterface.hpp +289 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/Python/Views.hpp +223 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopNDProjectionPlot.hpp +77 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopPlot.hpp +376 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopPlotAxis.hpp +145 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopPlotInterface.hpp +397 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopPlotLegend.hpp +46 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopPlotLegendInterface.hpp +63 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopPlotRange.hpp +206 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/SciQLopTimeSeriesPlot.hpp +84 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/constants.hpp +39 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/enums.hpp +204 -0
- sciqlopplots-0.10.0/include/SciQLopPlots/unique_names_factory.hpp +60 -0
- sciqlopplots-0.10.0/meson.build +40 -0
- sciqlopplots-0.10.0/meson_options.txt +2 -0
- sciqlopplots-0.10.0/pyproject.toml +43 -0
- sciqlopplots-0.10.0/qcustomplot-source/GPL.txt +674 -0
- sciqlopplots-0.10.0/qcustomplot-source/changelog.txt +629 -0
- sciqlopplots-0.10.0/qcustomplot-source/qcustomplot.cpp +38372 -0
- sciqlopplots-0.10.0/qcustomplot-source/qcustomplot.h +7764 -0
- sciqlopplots-0.10.0/resources/README.md +3 -0
- sciqlopplots-0.10.0/resources/icons/Cluster_mission_logo_pillars.jpg +0 -0
- sciqlopplots-0.10.0/resources/icons/JupyterConsole.png +0 -0
- sciqlopplots-0.10.0/resources/icons/Jupyter_logo.png +0 -0
- sciqlopplots-0.10.0/resources/icons/MPL.png +0 -0
- sciqlopplots-0.10.0/resources/icons/NASA.jpg +0 -0
- sciqlopplots-0.10.0/resources/icons/Python-logo-notext.png +0 -0
- sciqlopplots-0.10.0/resources/icons/QCP.png +0 -0
- sciqlopplots-0.10.0/resources/icons/SciQLop.ico +0 -0
- sciqlopplots-0.10.0/resources/icons/SciQLop.png +0 -0
- sciqlopplots-0.10.0/resources/icons/amda.png +0 -0
- sciqlopplots-0.10.0/resources/icons/logo_speasy.png +0 -0
- sciqlopplots-0.10.0/resources/icons/plot_panel_128.png +0 -0
- sciqlopplots-0.10.0/resources/icons/sciqlop2PNG_1024.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/add.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/add_graph.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/arrow_drop_down.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/arrow_drop_up.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/arrow_right.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/catalogue.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/check_box_checked.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/check_box_unchecked.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/close.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/close_small.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/dataSourceRoot.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/delete.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/detach_tab.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/expand_more.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/folder_copy.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/folder_open.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/fullscreen.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/fullscreen_exit.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/push_pin.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/push_pin_filled.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/push_pin_grad.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/radio_button_checked.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/radio_button_unchecked.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/remove.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/save.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/search.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/time.png +0 -0
- sciqlopplots-0.10.0/resources/icons/theme/zoom.png +0 -0
- sciqlopplots-0.10.0/resources/resources.qrc +43 -0
- sciqlopplots-0.10.0/setup.cfg +12 -0
- sciqlopplots-0.10.0/src/AbstractResampler.cpp +63 -0
- sciqlopplots-0.10.0/src/AxisSynchronizer.cpp +68 -0
- sciqlopplots-0.10.0/src/BooleanDelegate.cpp +39 -0
- sciqlopplots-0.10.0/src/ColorDelegate.cpp +73 -0
- sciqlopplots-0.10.0/src/ColorGradientDelegate.cpp +185 -0
- sciqlopplots-0.10.0/src/DataProducer.cpp +213 -0
- sciqlopplots-0.10.0/src/InspectorBase.cpp +79 -0
- sciqlopplots-0.10.0/src/InspectorView.cpp +75 -0
- sciqlopplots-0.10.0/src/Inspectors.cpp +40 -0
- sciqlopplots-0.10.0/src/LegendDelegate.cpp +37 -0
- sciqlopplots-0.10.0/src/LineDelegate.cpp +70 -0
- sciqlopplots-0.10.0/src/Model.cpp +196 -0
- sciqlopplots-0.10.0/src/MultiPlotsVSpan.cpp +115 -0
- sciqlopplots-0.10.0/src/Node.cpp +172 -0
- sciqlopplots-0.10.0/src/ProductsModel.cpp +247 -0
- sciqlopplots-0.10.0/src/ProductsNode.cpp +114 -0
- sciqlopplots-0.10.0/src/ProductsView.cpp +86 -0
- sciqlopplots-0.10.0/src/Profiling.cpp +41 -0
- sciqlopplots-0.10.0/src/PropertiesPanel.cpp +41 -0
- sciqlopplots-0.10.0/src/PropertiesView.cpp +49 -0
- sciqlopplots-0.10.0/src/PropertyDelegateBase.cpp +34 -0
- sciqlopplots-0.10.0/src/PythonInterface.cpp +555 -0
- sciqlopplots-0.10.0/src/QCPAbstractPlottableWrapper.cpp +119 -0
- sciqlopplots-0.10.0/src/QCPItemRichText.cpp +122 -0
- sciqlopplots-0.10.0/src/SciQLopColorMap.cpp +170 -0
- sciqlopplots-0.10.0/src/SciQLopColorMapDelegate.cpp +42 -0
- sciqlopplots-0.10.0/src/SciQLopColorMapInspector.cpp +60 -0
- sciqlopplots-0.10.0/src/SciQLopColorMapResampler.cpp +206 -0
- sciqlopplots-0.10.0/src/SciQLopCurve.cpp +160 -0
- sciqlopplots-0.10.0/src/SciQLopCurveResampler.cpp +56 -0
- sciqlopplots-0.10.0/src/SciQLopGraphComponent.cpp +140 -0
- sciqlopplots-0.10.0/src/SciQLopGraphComponentDelegate.cpp +45 -0
- sciqlopplots-0.10.0/src/SciQLopGraphComponentInspector.cpp +63 -0
- sciqlopplots-0.10.0/src/SciQLopGraphComponentInterface.cpp +0 -0
- sciqlopplots-0.10.0/src/SciQLopGraphDelegate.cpp +36 -0
- sciqlopplots-0.10.0/src/SciQLopGraphInterface.cpp +45 -0
- sciqlopplots-0.10.0/src/SciQLopGraphInterfaceInspector.cpp +77 -0
- sciqlopplots-0.10.0/src/SciQLopLineGraph.cpp +156 -0
- sciqlopplots-0.10.0/src/SciQLopLineGraphResampler.cpp +62 -0
- sciqlopplots-0.10.0/src/SciQLopMultiPlotObject.cpp +71 -0
- sciqlopplots-0.10.0/src/SciQLopMultiPlotPanel.cpp +410 -0
- sciqlopplots-0.10.0/src/SciQLopMultiPlotPanelDelegate.cpp +39 -0
- sciqlopplots-0.10.0/src/SciQLopMultiPlotPanelInspector.cpp +65 -0
- sciqlopplots-0.10.0/src/SciQLopNDProjectionCurves.cpp +105 -0
- sciqlopplots-0.10.0/src/SciQLopNDProjectionCurvesInspector.cpp +65 -0
- sciqlopplots-0.10.0/src/SciQLopNDProjectionPlot.cpp +125 -0
- sciqlopplots-0.10.0/src/SciQLopNDProjectionPlotInspector.cpp +66 -0
- sciqlopplots-0.10.0/src/SciQLopPixmapItem.cpp +30 -0
- sciqlopplots-0.10.0/src/SciQLopPlot.cpp +757 -0
- sciqlopplots-0.10.0/src/SciQLopPlotAxis.cpp +316 -0
- sciqlopplots-0.10.0/src/SciQLopPlotAxisDelegate.cpp +31 -0
- sciqlopplots-0.10.0/src/SciQLopPlotCollection.cpp +51 -0
- sciqlopplots-0.10.0/src/SciQLopPlotContainer.cpp +159 -0
- sciqlopplots-0.10.0/src/SciQLopPlotDelegate.cpp +46 -0
- sciqlopplots-0.10.0/src/SciQLopPlotInspector.cpp +64 -0
- sciqlopplots-0.10.0/src/SciQLopPlotInterface.cpp +36 -0
- sciqlopplots-0.10.0/src/SciQLopPlotItem.cpp +22 -0
- sciqlopplots-0.10.0/src/SciQLopPlotLegend.cpp +57 -0
- sciqlopplots-0.10.0/src/SciQLopTimeSeriesPlot.cpp +35 -0
- sciqlopplots-0.10.0/src/SciQLopTracer.cpp +475 -0
- sciqlopplots-0.10.0/src/SciQLopVerticalSpan.cpp +216 -0
- sciqlopplots-0.10.0/src/TimeAxisSynchronizer.cpp +43 -0
- sciqlopplots-0.10.0/src/TreeView.cpp +50 -0
- sciqlopplots-0.10.0/src/VPlotsAlign.cpp +113 -0
- sciqlopplots-0.10.0/src/XAxisSynchronizer.cpp +48 -0
- sciqlopplots-0.10.0/src/icons.cpp +63 -0
- sciqlopplots-0.10.0/subprojects/cpp_utils.wrap +3 -0
- sciqlopplots-0.10.0/subprojects/fmt.wrap +13 -0
- sciqlopplots-0.10.0/subprojects/hedley.wrap +12 -0
- sciqlopplots-0.10.0/subprojects/qcustomplot.wrap +7 -0
- sciqlopplots-0.10.0/subprojects/tracy.wrap +7 -0
- sciqlopplots-0.10.0/tests/manual-tests/All/main.py +290 -0
- sciqlopplots-0.10.0/tests/manual-tests/DragNDrop/main.py +74 -0
- sciqlopplots-0.10.0/tests/manual-tests/ForProfiling/main.py +116 -0
- sciqlopplots-0.10.0/tests/manual-tests/MicroSciQLop/main.py +184 -0
- sciqlopplots-0.10.0/tests/manual-tests/Products/main.py +57 -0
- sciqlopplots-0.10.0/tests/manual-tests/Products/products.json +1 -0
- sciqlopplots-0.10.0/tests/manual-tests/Projections/main.py +85 -0
- sciqlopplots-0.10.0/tests/manual-tests/SciQLopColorMap/main.py +63 -0
- sciqlopplots-0.10.0/tests/manual-tests/SciQLopGraph/main.py +56 -0
- sciqlopplots-0.10.0/tests/manual-tests/SciQLopVerticalSpan/main.py +43 -0
- sciqlopplots-0.10.0/tests/manual-tests/StackedGraphs/main.py +71 -0
- sciqlopplots-0.10.0/tests/manual-tests/common.py +79 -0
- sciqlopplots-0.10.0/tests/manual-tests/meson.build +29 -0
- sciqlopplots-0.10.0/tests/meson.build +1 -0
- sciqlopplots-0.10.0/tests/sanity/signal_and_slots.sh +47 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
# See http://clang.llvm.org/docs/ClangFormatStyleOptions.html for a definition
|
|
3
|
+
# of the options
|
|
4
|
+
Language: Cpp
|
|
5
|
+
BasedOnStyle: WebKit
|
|
6
|
+
|
|
7
|
+
# Line length
|
|
8
|
+
ColumnLimit: 100
|
|
9
|
+
|
|
10
|
+
# Indent with 4 spaces
|
|
11
|
+
IndentWidth: 4
|
|
12
|
+
AccessModifierOffset: -4 # -IndentWidth
|
|
13
|
+
ConstructorInitializerIndentWidth: 8 # 2 * IndentWidth
|
|
14
|
+
|
|
15
|
+
BreakBeforeBraces: Allman
|
|
16
|
+
SeparateDefinitionBlocks: Always
|
|
17
|
+
EmptyLineBeforeAccessModifier: Always
|
|
18
|
+
|
|
19
|
+
AllowShortFunctionsOnASingleLine: Inline
|
|
20
|
+
AlwaysBreakTemplateDeclarations: true
|
|
21
|
+
AlwaysBreakBeforeMultilineStrings: true
|
|
22
|
+
BreakBeforeBinaryOperators: true
|
|
23
|
+
ConstructorInitializerAllOnOneLineOrOnePerLine: true
|
|
24
|
+
IndentCaseLabels: true
|
|
25
|
+
MaxEmptyLinesToKeep: 2
|
|
26
|
+
Standard: Cpp11
|
|
27
|
+
UseTab: Never
|
|
28
|
+
|
|
29
|
+
ContinuationIndentWidth: 4
|
|
30
|
+
AlignAfterOpenBracket: true
|
|
31
|
+
LambdaBodyIndentation: Signature
|
|
32
|
+
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
name: GH Actions
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
push:
|
|
7
|
+
pull_request:
|
|
8
|
+
|
|
9
|
+
env:
|
|
10
|
+
PYSIDE_VERSION: 6.8.2
|
|
11
|
+
#PIP_EXTRA_INDEX_URL: "https://download.qt.io/official_releases/QtForPython/"
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
build_sdist:
|
|
15
|
+
name: Build source distribution
|
|
16
|
+
runs-on: ubuntu-latest
|
|
17
|
+
steps:
|
|
18
|
+
- uses: actions/checkout@v4
|
|
19
|
+
- name: Build sdist
|
|
20
|
+
run: |
|
|
21
|
+
sudo apt update && sudo apt install -y libgl-dev
|
|
22
|
+
pip install aqtinstall
|
|
23
|
+
aqt install-qt -O "$GITHUB_WORKSPACE"/Qt linux desktop ${{ env.PYSIDE_VERSION }}
|
|
24
|
+
PATH="$GITHUB_WORKSPACE"/Qt/${{ env.PYSIDE_VERSION }}/gcc_64/bin:$PATH" LD_LIBRARY_PATH="$GITHUB_WORKSPACE"/Qt/${{ env.PYSIDE_VERSION }}/gcc_64/lib:$LD_LIBRARY_PATH" pipx run build --sdist
|
|
25
|
+
- name: Upload artifact
|
|
26
|
+
uses: actions/upload-artifact@v4
|
|
27
|
+
with:
|
|
28
|
+
name: cibw-sdist
|
|
29
|
+
path: dist/*.tar.gz
|
|
30
|
+
|
|
31
|
+
build_wheels:
|
|
32
|
+
name: Build wheels on ${{ matrix.os }}
|
|
33
|
+
runs-on: ${{ matrix.os }}
|
|
34
|
+
strategy:
|
|
35
|
+
matrix:
|
|
36
|
+
include:
|
|
37
|
+
- os: ubuntu-latest
|
|
38
|
+
arch: x86_64
|
|
39
|
+
- os: windows-latest
|
|
40
|
+
arch: x86_64
|
|
41
|
+
- os: macos-13 # Intel
|
|
42
|
+
arch: x86_64
|
|
43
|
+
- os: macos-14 # Apple Silicon
|
|
44
|
+
arch: arm64
|
|
45
|
+
steps:
|
|
46
|
+
- uses: ilammy/msvc-dev-cmd@v1
|
|
47
|
+
if: runner.os == 'Windows'
|
|
48
|
+
with:
|
|
49
|
+
arch: amd64
|
|
50
|
+
- uses: actions/checkout@v4
|
|
51
|
+
- name: Forward GITHUB_WORKSPACE env var
|
|
52
|
+
shell: bash
|
|
53
|
+
run: |
|
|
54
|
+
echo "GITHUB_WORKSPACE=$GITHUB_WORKSPACE" >> $GITHUB_ENV
|
|
55
|
+
- name: Build wheels
|
|
56
|
+
uses: pypa/cibuildwheel@v2.22.0
|
|
57
|
+
env:
|
|
58
|
+
PYSIDE_VERSION: ${{ env.PYSIDE_VERSION }}
|
|
59
|
+
PIP_EXTRA_INDEX_URL: ${{ env.PIP_EXTRA_INDEX_URL }}
|
|
60
|
+
CIBW_ENVIRONMENT_WINDOWS: PYSIDE_VERSION=${{ env.PYSIDE_VERSION }} PIP_EXTRA_INDEX_URL=${{ env.PIP_EXTRA_INDEX_URL }} PATH="${GITHUB_WORKSPACE}\\Qt\\${{ env.PYSIDE_VERSION }}\\msvc2022_64\\bin;$PATH"
|
|
61
|
+
CIBW_ENVIRONMENT_MACOS: PYSIDE_VERSION=${{ env.PYSIDE_VERSION }} MACOSX_DEPLOYMENT_TARGET='11.0' PATH=${{ env.GITHUB_WORKSPACE }}/Qt/${{ env.PYSIDE_VERSION }}/macos/bin:$PATH
|
|
62
|
+
CIBW_ENVIRONMENT_LINUX: PYSIDE_VERSION=${{ env.PYSIDE_VERSION }} PIP_EXTRA_INDEX_URL=${{ env.PIP_EXTRA_INDEX_URL }} PATH=${{ env.GITHUB_WORKSPACE }}/Qt/${{ env.PYSIDE_VERSION }}/gcc_64/bin:$PATH LD_LIBRARY_PATH=${{ env.GITHUB_WORKSPACE }}/Qt/${{ env.PYSIDE_VERSION }}/gcc_64/lib:$LD_LIBRARY_PATH
|
|
63
|
+
CIBW_BEFORE_BUILD_WINDOWS: >
|
|
64
|
+
pip install "aqtinstall"
|
|
65
|
+
&& aqt install-qt -O ${{ env.GITHUB_WORKSPACE }}\\Qt windows desktop ${{ env.PYSIDE_VERSION }} win64_msvc2022_64
|
|
66
|
+
CIBW_BEFORE_BUILD_MACOS: >
|
|
67
|
+
pip install "aqtinstall"
|
|
68
|
+
&& aqt install-qt -O "${{ env.GITHUB_WORKSPACE }}/Qt" mac desktop ${{ env.PYSIDE_VERSION }}
|
|
69
|
+
CIBW_BEFORE_BUILD_LINUX: >
|
|
70
|
+
dnf install -y /usr/lib64/libxkbcommon.so.0 /usr/lib64/libxslt.so.1 clang /usr/bin/llvm-config
|
|
71
|
+
&& pip install "aqtinstall" && aqt install-qt -O "${{ env.GITHUB_WORKSPACE }}/Qt" linux desktop ${{ env.PYSIDE_VERSION }}
|
|
72
|
+
CIBW_REPAIR_WHEEL_COMMAND_LINUX: >
|
|
73
|
+
auditwheel repair -w {dest_dir} --exclude libpyside6.abi3.so.6.8 --exclude libshiboken6.abi3.so.6.8 --exclude libQt6Core.so.6 --exclude libQt6Widgets.so.6 --exclude libQt6Gui.so.6 --exclude libpyside6qml.abi3.so.6.8 --exclude libGLX.so.0 --exclude libOpenGL.so.0 --exclude libxcb.so.1 --only-plat --plat manylinux_2_28_x86_64 {wheel}
|
|
74
|
+
CIBW_REPAIR_WHEEL_COMMAND_MACOS:
|
|
75
|
+
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
|
|
76
|
+
CIBW_SKIP: "*-win32 *i686 *38-* pp* *musllinux*"
|
|
77
|
+
CIBW_BUILD_VERBOSITY: 3
|
|
78
|
+
CIBW_ARCH: ${{ matrix.arch }}
|
|
79
|
+
|
|
80
|
+
- uses: actions/upload-artifact@v4
|
|
81
|
+
with:
|
|
82
|
+
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
|
|
83
|
+
path: ./wheelhouse/*.whl
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
upload_pypi:
|
|
87
|
+
needs: [build_sdist, build_wheels]
|
|
88
|
+
runs-on: ubuntu-latest
|
|
89
|
+
# upload to PyPI only on github releases
|
|
90
|
+
if: github.event_name == 'release' && github.event.action == 'published' && github.repository_owner == 'SciQLop'
|
|
91
|
+
steps:
|
|
92
|
+
- uses: actions/download-artifact@v4
|
|
93
|
+
with:
|
|
94
|
+
pattern: cibw-*
|
|
95
|
+
path: dist
|
|
96
|
+
merge-multiple: true
|
|
97
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
98
|
+
with:
|
|
99
|
+
user: __token__
|
|
100
|
+
password: ${{ secrets.PYPI_PASSWORD }}
|
|
101
|
+
skip-existing: true
|
|
102
|
+
|
|
103
|
+
upload_test_pypi:
|
|
104
|
+
needs: [build_sdist, build_wheels]
|
|
105
|
+
runs-on: ubuntu-latest
|
|
106
|
+
# upload to test PyPI on github pushes
|
|
107
|
+
if: github.event_name == 'push' && github.repository_owner == 'SciQLop'
|
|
108
|
+
steps:
|
|
109
|
+
- uses: actions/download-artifact@v4
|
|
110
|
+
with:
|
|
111
|
+
pattern: cibw-*
|
|
112
|
+
path: dist
|
|
113
|
+
merge-multiple: true
|
|
114
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
115
|
+
with:
|
|
116
|
+
user: __token__
|
|
117
|
+
password: ${{ secrets.PYPI_TEST_PASSWORD }}
|
|
118
|
+
repository-url: https://test.pypi.org/legacy/
|
|
119
|
+
skip-existing: true
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
build/
|
|
2
|
+
dist/
|
|
3
|
+
subprojects/range-v3-*
|
|
4
|
+
subprojects/Catch2-*
|
|
5
|
+
subprojects/cpp_utils
|
|
6
|
+
subprojects/QCustomPlot
|
|
7
|
+
subprojects/packagecache/*
|
|
8
|
+
subprojects/hedley-*
|
|
9
|
+
subprojects/**/*
|
|
10
|
+
*.egg-info
|
|
11
|
+
*.srctrl*
|
|
12
|
+
*.kdev4
|
|
13
|
+
.vscode
|
|
14
|
+
*.pyc
|
|
15
|
+
*.swp
|
|
16
|
+
*.user
|
|
17
|
+
*.user*
|
|
18
|
+
.cache/*
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
GNU GENERAL PUBLIC LICENSE
|
|
2
|
+
Version 3, 29 June 2007
|
|
3
|
+
|
|
4
|
+
An easy to use ISTP loader package.
|
|
5
|
+
Copyright (C) 2022 Alexis Jeandet
|
|
6
|
+
|
|
7
|
+
This program is free software: you can redistribute it and/or modify
|
|
8
|
+
it under the terms of the GNU General Public License as published by
|
|
9
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
10
|
+
(at your option) any later version.
|
|
11
|
+
|
|
12
|
+
This program is distributed in the hope that it will be useful,
|
|
13
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15
|
+
GNU General Public License for more details.
|
|
16
|
+
|
|
17
|
+
You should have received a copy of the GNU General Public License
|
|
18
|
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
19
|
+
|
|
20
|
+
Also add information on how to contact you by electronic and paper mail.
|
|
21
|
+
|
|
22
|
+
You should also get your employer (if you work as a programmer) or school,
|
|
23
|
+
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
|
24
|
+
For more information on this, and how to apply and follow the GNU GPL, see
|
|
25
|
+
<http://www.gnu.org/licenses/>.
|
|
26
|
+
|
|
27
|
+
The GNU General Public License does not permit incorporating your program
|
|
28
|
+
into proprietary programs. If your program is a subroutine library, you
|
|
29
|
+
may consider it more useful to permit linking proprietary applications with
|
|
30
|
+
the library. If this is what you want to do, use the GNU Lesser General
|
|
31
|
+
Public License instead of this License. But first, please read
|
|
32
|
+
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
|
33
|
+
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
FROM quay.io/pypa/manylinux_2_28_x86_64
|
|
2
|
+
ARG QT_VERSION=6.7.1
|
|
3
|
+
ENV QT_VERSION=${QT_VERSION}
|
|
4
|
+
ENV PATH="/opt/Qt/${QT_VERSION}/gcc_64/bin:${PATH}"
|
|
5
|
+
ENV LD_LIBRARY_PATH="/opt/Qt/${QT_VERSION}/gcc_64/lib:${LD_LIBRARY_PATH}"
|
|
6
|
+
ENV PATH="/opt/python/cp310-cp310/bin:${PATH}"
|
|
7
|
+
|
|
8
|
+
RUN pip install --upgrade pip setuptools meson ninja meson-python wheel shiboken6==${QT_VERSION} \
|
|
9
|
+
pyside6==${QT_VERSION} shiboken6_generator==${QT_VERSION} aqtinstall &&\
|
|
10
|
+
aqt install-qt -O "/opt/Qt" linux desktop ${QT_VERSION}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: SciQLopPlots
|
|
3
|
+
Version: 0.10.0
|
|
4
|
+
Summary: SciQLop plot API based on QCustomPlot
|
|
5
|
+
Author-Email: Alexis Jeandet <alexis.jeandet@member.fsf.org>
|
|
6
|
+
License: GNU GENERAL PUBLIC LICENSE
|
|
7
|
+
Version 3, 29 June 2007
|
|
8
|
+
|
|
9
|
+
An easy to use ISTP loader package.
|
|
10
|
+
Copyright (C) 2022 Alexis Jeandet
|
|
11
|
+
|
|
12
|
+
This program is free software: you can redistribute it and/or modify
|
|
13
|
+
it under the terms of the GNU General Public License as published by
|
|
14
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
15
|
+
(at your option) any later version.
|
|
16
|
+
|
|
17
|
+
This program is distributed in the hope that it will be useful,
|
|
18
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
19
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
20
|
+
GNU General Public License for more details.
|
|
21
|
+
|
|
22
|
+
You should have received a copy of the GNU General Public License
|
|
23
|
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
24
|
+
|
|
25
|
+
Also add information on how to contact you by electronic and paper mail.
|
|
26
|
+
|
|
27
|
+
You should also get your employer (if you work as a programmer) or school,
|
|
28
|
+
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
|
29
|
+
For more information on this, and how to apply and follow the GNU GPL, see
|
|
30
|
+
<http://www.gnu.org/licenses/>.
|
|
31
|
+
|
|
32
|
+
The GNU General Public License does not permit incorporating your program
|
|
33
|
+
into proprietary programs. If your program is a subroutine library, you
|
|
34
|
+
may consider it more useful to permit linking proprietary applications with
|
|
35
|
+
the library. If this is what you want to do, use the GNU Lesser General
|
|
36
|
+
Public License instead of this License. But first, please read
|
|
37
|
+
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
Classifier: Development Status :: 4 - Beta
|
|
41
|
+
Classifier: Intended Audience :: Developers
|
|
42
|
+
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
43
|
+
Classifier: Natural Language :: English
|
|
44
|
+
Classifier: Programming Language :: Python :: 3
|
|
45
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
46
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
47
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
48
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
49
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
50
|
+
Project-URL: homepage, https://github.com/SciQLop/SciQLopPlots
|
|
51
|
+
Requires-Python: >=3.8
|
|
52
|
+
Requires-Dist: numpy
|
|
53
|
+
Requires-Dist: pyside6==6.8.2
|
|
54
|
+
Requires-Dist: shiboken6==6.8.2
|
|
55
|
+
Description-Content-Type: text/markdown
|
|
56
|
+
|
|
57
|
+
[](https://www.gnu.org/licenses/gpl-3.0)
|
|
58
|
+
[]()
|
|
59
|
+
[](https://pypi.python.org/pypi/sciqlopplots)
|
|
60
|
+
[](https://codecov.io/gh/SciQLop/SciQLopPlots/branch/main)
|
|
61
|
+
|
|
62
|
+
# SciQLopPlots - A High-Performance Plotting Library for Scientific Data
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
SciQLopPlots is a powerful and efficient plotting library designed for the [SciQLop](https://github.com/SciQLop/SciQLop) scientific data analysis platform. It provides interactive visualization capabilities optimized for handling large-scale scientific datasets with seamless integration into SciQLop's ecosystem.
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
## Key Features
|
|
69
|
+
|
|
70
|
+
- **High-Performance Rendering**: Optimized for smooth interaction with large non uniform 1D, 2D datasets.
|
|
71
|
+
- **Interactive Visualization**: Pan, zoom, and inspect data points in real time.
|
|
72
|
+
- **Multiple Plot Types**: Supports time series, spectrograms, parametric curves.
|
|
73
|
+
- **Customizable Styling**: Adjust colors, labels, axes, and plot layouts programmatically or via GUI.
|
|
74
|
+
- **Cross-Platform**: Works on Windows, Linux, and macOS.
|
|
75
|
+
|
|
76
|
+
## Installation
|
|
77
|
+
|
|
78
|
+
SciQLopPlots can be installed as a stadalone Python package with pip.
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
python -m pip install SciQLopPlots
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
# How to contribute
|
|
85
|
+
|
|
86
|
+
Just fork the repository, make your changes and submit a pull request. We will be happy to review and merge your
|
|
87
|
+
changes.
|
|
88
|
+
Reports of bugs and feature requests are also welcome. Do not forget to star the project if you like it!
|
|
89
|
+
|
|
90
|
+
# Credits
|
|
91
|
+
|
|
92
|
+
The development of SciQLop is supported by the [CDPP](http://www.cdpp.eu/).<br />
|
|
93
|
+
We acknowledge support from the federation [Plas@Par](https://www.plasapar.sorbonne-universite.fr)
|
|
94
|
+
|
|
95
|
+
# Thanks
|
|
96
|
+
|
|
97
|
+
We would like to thank the developers of the following libraries that SciQLop depends on:
|
|
98
|
+
|
|
99
|
+
- [PySide6](https://doc.qt.io/qtforpython-6/index.html) for the GUI framework and Qt bindings.
|
|
100
|
+
- [QCustomPlot](https://www.qcustomplot.com/) for providing the plotting library.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
[](https://www.gnu.org/licenses/gpl-3.0)
|
|
2
|
+
[]()
|
|
3
|
+
[](https://pypi.python.org/pypi/sciqlopplots)
|
|
4
|
+
[](https://codecov.io/gh/SciQLop/SciQLopPlots/branch/main)
|
|
5
|
+
|
|
6
|
+
# SciQLopPlots - A High-Performance Plotting Library for Scientific Data
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
SciQLopPlots is a powerful and efficient plotting library designed for the [SciQLop](https://github.com/SciQLop/SciQLop) scientific data analysis platform. It provides interactive visualization capabilities optimized for handling large-scale scientific datasets with seamless integration into SciQLop's ecosystem.
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## Key Features
|
|
13
|
+
|
|
14
|
+
- **High-Performance Rendering**: Optimized for smooth interaction with large non uniform 1D, 2D datasets.
|
|
15
|
+
- **Interactive Visualization**: Pan, zoom, and inspect data points in real time.
|
|
16
|
+
- **Multiple Plot Types**: Supports time series, spectrograms, parametric curves.
|
|
17
|
+
- **Customizable Styling**: Adjust colors, labels, axes, and plot layouts programmatically or via GUI.
|
|
18
|
+
- **Cross-Platform**: Works on Windows, Linux, and macOS.
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
SciQLopPlots can be installed as a stadalone Python package with pip.
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
python -m pip install SciQLopPlots
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
# How to contribute
|
|
29
|
+
|
|
30
|
+
Just fork the repository, make your changes and submit a pull request. We will be happy to review and merge your
|
|
31
|
+
changes.
|
|
32
|
+
Reports of bugs and feature requests are also welcome. Do not forget to star the project if you like it!
|
|
33
|
+
|
|
34
|
+
# Credits
|
|
35
|
+
|
|
36
|
+
The development of SciQLop is supported by the [CDPP](http://www.cdpp.eu/).<br />
|
|
37
|
+
We acknowledge support from the federation [Plas@Par](https://www.plasapar.sorbonne-universite.fr)
|
|
38
|
+
|
|
39
|
+
# Thanks
|
|
40
|
+
|
|
41
|
+
We would like to thank the developers of the following libraries that SciQLop depends on:
|
|
42
|
+
|
|
43
|
+
- [PySide6](https://doc.qt.io/qtforpython-6/index.html) for the GUI framework and Qt bindings.
|
|
44
|
+
- [QCustomPlot](https://www.qcustomplot.com/) for providing the plotting library.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
from PySide6 import QtCore, QtGui, QtWidgets, QtOpenGL, QtPrintSupport, QtSvg
|
|
2
|
+
from . import SciQLopPlotsBindings
|
|
3
|
+
from .SciQLopPlotsBindings import (GraphType, SciQLopPlot, SciQLopTimeSeriesPlot, SciQLopMultiPlotPanel,
|
|
4
|
+
SciQLopGraphInterface, AxisType, SciQLopPlotRange, SciQLopNDProjectionPlot)
|
|
5
|
+
from .SciQLopPlotsBindings import *
|
|
6
|
+
from datetime import datetime, timezone
|
|
7
|
+
from dateutil.parser import parse as dateparse
|
|
8
|
+
|
|
9
|
+
import sys
|
|
10
|
+
|
|
11
|
+
sys.modules["SciQLopPlotsBindings"] = SciQLopPlotsBindings
|
|
12
|
+
|
|
13
|
+
__version__ = '0.10.0'
|
|
14
|
+
|
|
15
|
+
def _merge_kwargs(kwargs, **kwargs2):
|
|
16
|
+
for k, v in kwargs2.items():
|
|
17
|
+
if k not in kwargs and v is not None:
|
|
18
|
+
kwargs[k] = v
|
|
19
|
+
return kwargs
|
|
20
|
+
|
|
21
|
+
def _patch_sciqlop_plot(cls):
|
|
22
|
+
def plot_func(self, callback, graph_type=None, **kwargs):
|
|
23
|
+
kwargs = {k: v for k, v in kwargs.items() if v is not None}
|
|
24
|
+
res = None
|
|
25
|
+
if graph_type == GraphType.ParametricCurve:
|
|
26
|
+
res = cls.parametric_curve(self, callback, **kwargs)
|
|
27
|
+
if graph_type == GraphType.Line:
|
|
28
|
+
res = cls.line(self, callback, **kwargs)
|
|
29
|
+
if graph_type == GraphType.ColorMap:
|
|
30
|
+
res = cls.colormap(self, callback, **kwargs)
|
|
31
|
+
return res
|
|
32
|
+
|
|
33
|
+
def plot(self, *args, name=None, labels=None, colors=None, graph_type=None, **kwargs):
|
|
34
|
+
graph_type = graph_type or GraphType.Line
|
|
35
|
+
kwargs = _merge_kwargs(kwargs, name=name, labels=labels, colors=colors)
|
|
36
|
+
if graph_type == GraphType.ParametricCurve and len(args) in (1, 2, 4):
|
|
37
|
+
return cls.parametric_curve(self, *args, **kwargs)
|
|
38
|
+
if len(args) == 1:
|
|
39
|
+
return plot_func(self, *args, graph_type=graph_type, **kwargs)
|
|
40
|
+
if len(args) == 2:
|
|
41
|
+
if graph_type == GraphType.Line:
|
|
42
|
+
return cls.line(self, *args, **kwargs)
|
|
43
|
+
if len(args) == 3:
|
|
44
|
+
return cls.colormap(self, *args, **kwargs)
|
|
45
|
+
|
|
46
|
+
print(f"only 1, 2 or 3 arguments are supported, got {len(args)}")
|
|
47
|
+
return None
|
|
48
|
+
|
|
49
|
+
cls.plot = plot
|
|
50
|
+
return cls
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
SciQLopPlot = _patch_sciqlop_plot(SciQLopPlot)
|
|
55
|
+
SciQLopTimeSeriesPlot = _patch_sciqlop_plot(SciQLopTimeSeriesPlot)
|
|
56
|
+
SciQLopMultiPlotPanel = _patch_sciqlop_plot(SciQLopMultiPlotPanel)
|
|
57
|
+
SciQLopNDProjectionPlot = _patch_sciqlop_plot(SciQLopNDProjectionPlot)
|
|
58
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
|
|
2
|
+
shiboken_generator_out = custom_target('sciqlopplots_bindings',
|
|
3
|
+
build_by_default:true,
|
|
4
|
+
output:generated_srcs,
|
|
5
|
+
input:'../bindings.xml',
|
|
6
|
+
depend_files:sciqlopplots_bindings_src+['../snippets.cpp'],
|
|
7
|
+
command:[
|
|
8
|
+
python3, meson.current_source_dir()+'/../helper_scripts/shiboken-gen.py',
|
|
9
|
+
'--input-header', meson.current_source_dir()+'/../bindings.h',
|
|
10
|
+
'--input-xml', meson.current_source_dir()+'/../bindings.xml',
|
|
11
|
+
'--shiboken', shiboken.full_path(),
|
|
12
|
+
'--typesystem-paths', shiboken_typesystem,
|
|
13
|
+
'--build-directory', meson.project_build_root(),
|
|
14
|
+
'--ref-build-target', 'SciQLopPlotsBindings',
|
|
15
|
+
'--output-directory',meson.current_build_dir()+'/../'
|
|
16
|
+
]
|
|
17
|
+
)
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*------------------------------------------------------------------------------
|
|
2
|
+
-- This file is a part of the SciQLop Software
|
|
3
|
+
-- Copyright (C) 2023, Plasma Physics Laboratory - CNRS
|
|
4
|
+
--
|
|
5
|
+
-- This program is free software; you can redistribute it and/or modify
|
|
6
|
+
-- it under the terms of the GNU General Public License as published by
|
|
7
|
+
-- the Free Software Foundation; either version 2 of the License, or
|
|
8
|
+
-- (at your option) any later version.
|
|
9
|
+
--
|
|
10
|
+
-- This program is distributed in the hope that it will be useful,
|
|
11
|
+
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
-- GNU General Public License for more details.
|
|
14
|
+
--
|
|
15
|
+
-- You should have received a copy of the GNU General Public License
|
|
16
|
+
-- along with this program; if not, write to the Free Software
|
|
17
|
+
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
18
|
+
-------------------------------------------------------------------------------*/
|
|
19
|
+
/*-- Author : Alexis Jeandet
|
|
20
|
+
-- Mail : alexis.jeandet@member.fsf.org
|
|
21
|
+
----------------------------------------------------------------------------*/
|
|
22
|
+
#pragma once
|
|
23
|
+
|
|
24
|
+
#include <qcustomplot.h>
|
|
25
|
+
|
|
26
|
+
class _QCustomPlot : public QCustomPlot
|
|
27
|
+
{
|
|
28
|
+
Q_OBJECT
|
|
29
|
+
public:
|
|
30
|
+
explicit _QCustomPlot(QWidget* parent = nullptr) : QCustomPlot { parent } {};
|
|
31
|
+
virtual ~_QCustomPlot() Q_DECL_OVERRIDE {};
|
|
32
|
+
inline QCPColorMap* addColorMap(QCPAxis* x, QCPAxis* y)
|
|
33
|
+
{
|
|
34
|
+
auto cm = new QCPColorMap(x, y);
|
|
35
|
+
return cm;
|
|
36
|
+
}
|
|
37
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
#ifndef SCIQLOPPLOTS_BINDINGS_H
|
|
2
|
+
#define SCIQLOPPLOTS_BINDINGS_H
|
|
3
|
+
// Prevents shiboken from turning signals into functions
|
|
4
|
+
#define BINDINGS_H
|
|
5
|
+
#define _CRT_USE_BUILTIN_OFFSETOF
|
|
6
|
+
// #define QT_ANNOTATE_ACCESS_SPECIFIER(a) __attribute__((annotate(#a)))
|
|
7
|
+
// #include <memory>
|
|
8
|
+
|
|
9
|
+
#include "SciQLopPlots/Python/PythonInterface.hpp"
|
|
10
|
+
|
|
11
|
+
#include "_QCustomPlot.hpp"
|
|
12
|
+
#include <SciQLopPlots/DataProducer/DataProducer.hpp>
|
|
13
|
+
#include <SciQLopPlots/DragNDrop/PlotDragNDropCallback.hpp>
|
|
14
|
+
#include <SciQLopPlots/Inspector/InspectorBase.hpp>
|
|
15
|
+
#include <SciQLopPlots/Inspector/Inspectors.hpp>
|
|
16
|
+
#include <SciQLopPlots/Inspector/Model/Model.hpp>
|
|
17
|
+
#include <SciQLopPlots/Inspector/Model/Node.hpp>
|
|
18
|
+
#include <SciQLopPlots/Inspector/PropertyDelegateBase.hpp>
|
|
19
|
+
#include <SciQLopPlots/Inspector/View/InspectorView.hpp>
|
|
20
|
+
#include <SciQLopPlots/Inspector/View/PropertiesPanel.hpp>
|
|
21
|
+
#include <SciQLopPlots/Inspector/View/TreeView.hpp>
|
|
22
|
+
#include <SciQLopPlots/Items/SciQLopVerticalSpan.hpp>
|
|
23
|
+
#include <SciQLopPlots/Items/SciQLopPixmapItem.hpp>
|
|
24
|
+
#include <SciQLopPlots/MultiPlots/MultiPlotsVSpan.hpp>
|
|
25
|
+
#include <SciQLopPlots/MultiPlots/SciQLopMultiPlotObject.hpp>
|
|
26
|
+
#include <SciQLopPlots/MultiPlots/SciQLopMultiPlotPanel.hpp>
|
|
27
|
+
#include <SciQLopPlots/MultiPlots/SciQLopPlotContainer.hpp>
|
|
28
|
+
#include <SciQLopPlots/MultiPlots/VPlotsAlign.hpp>
|
|
29
|
+
#include <SciQLopPlots/MultiPlots/XAxisSynchronizer.hpp>
|
|
30
|
+
#include <SciQLopPlots/Plotables/QCPAbstractPlottableWrapper.hpp>
|
|
31
|
+
#include <SciQLopPlots/Plotables/SciQLopColorMap.hpp>
|
|
32
|
+
#include <SciQLopPlots/Plotables/SciQLopCurve.hpp>
|
|
33
|
+
#include <SciQLopPlots/Plotables/SciQLopGraphComponentInterface.hpp>
|
|
34
|
+
#include <SciQLopPlots/Plotables/SciQLopGraphInterface.hpp>
|
|
35
|
+
#include <SciQLopPlots/Plotables/SciQLopLineGraph.hpp>
|
|
36
|
+
#include <SciQLopPlots/SciQLopPlot.hpp>
|
|
37
|
+
#include <SciQLopPlots/SciQLopPlotAxis.hpp>
|
|
38
|
+
#include <SciQLopPlots/SciQLopPlotInterface.hpp>
|
|
39
|
+
#include <SciQLopPlots/SciQLopPlotRange.hpp>
|
|
40
|
+
#include <SciQLopPlots/SciQLopTimeSeriesPlot.hpp>
|
|
41
|
+
#include <SciQLopPlots/SciQLopNDProjectionPlot.hpp>
|
|
42
|
+
#include <SciQLopPlots/SciQLopPlotLegendInterface.hpp>
|
|
43
|
+
#include <SciQLopPlots/SciQLopPlotLegend.hpp>
|
|
44
|
+
#include <SciQLopPlots/enums.hpp>
|
|
45
|
+
|
|
46
|
+
#include <SciQLopPlots/Products/ProductsModel.hpp>
|
|
47
|
+
#include <SciQLopPlots/Products/ProductsNode.hpp>
|
|
48
|
+
#include <SciQLopPlots/Products/ProductsView.hpp>
|
|
49
|
+
|
|
50
|
+
#include <SciQLopPlots/Icons/icons.hpp>
|
|
51
|
+
|
|
52
|
+
#include <qcustomplot.h>
|
|
53
|
+
|
|
54
|
+
#endif // SCIQLOPPLOTS_BINDINGS_H
|