-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
72dd74c
commit c7ffb04
Showing
2 changed files
with
52 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ Getting started | |
:caption: Contents: | ||
|
||
overview | ||
motivation | ||
installation | ||
examples | ||
licenses |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
.. _motivation: | ||
|
||
Motivation | ||
========== | ||
|
||
What are PlotPy V2 advantages over PlotPy V1? | ||
--------------------------------------------- | ||
|
||
From a developer point of view, PlotPy V2 is a major overhaul of PlotPy V1: | ||
|
||
* Architecture has been redesigned to be more modular and extensible, and more simple. | ||
* Code quality has been improved introducing `black`, `isort` and typing annotations | ||
all over the codebase | ||
|
||
.. note:: | ||
PlotPy V2 is fully typed using Python 3.8+ type annotations. | ||
This means that you can use your IDE to get autocompletion and type checking | ||
(e.g. with VSCode, Visual Studio, etc.). | ||
This is a major improvement when you write code using PlotPy V2: | ||
you can rely on the type annotations to understand what a function does | ||
and what it returns, and your IDE can help you a lot with autocompletion | ||
and type checking. | ||
|
||
To sum up, PlotPy V2 is a more modern and more maintainable codebase that will | ||
allow developers to create plotting applications even more easily than before. | ||
|
||
From an end-user point of view, PlotPy V2 is also a significant improvement over | ||
PlotPy V1: | ||
|
||
* PlotPy V2 is more stable and more robust thanks to the new `pytest`-based | ||
automated test suite, with a 70% code coverage. | ||
|
||
* PlotPy V2 benefits from the backport of many bug fixes and improvements | ||
that were made in the guiqwt codebase since PlotPy V1 was released (i.e. from | ||
2016 to 2023). | ||
|
||
* PlotPy V2 provides tons of new features (e.g. alpha function for better transparency | ||
control, refined contour plots, synchronized multiple plots, selection dialog boxes, | ||
SVG-based shapes, JSON de/serialization of plot items, new simple way to create | ||
plotting widgets with `PlotBuilder`, etc.) | ||
|
||
* PlotPy V2 will be maintained and improved in the future, while PlotPy V1 is not | ||
maintained anymore. Some significant improvements are already planned for the | ||
next releases (e.g. enhanced color maps, new plot items, etc.) | ||
|
||
What are PlotPy V2 advantages over guiqwt? | ||
------------------------------------------ | ||
|
||
Except from the backporting of bug fixes and improvements that were made in the | ||
guiqwt codebase since PlotPy V1 was released (i.e. from 2016 to 2023), PlotPy V2 | ||
provides the same advantages over guiqwt as PlotPy V1: see previous section. |