Graphinglib

Latest version: v1.5.0

Safety actively analyzes 688896 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

1.5.0

Highlights

- New `Polygon` object to create any given shapes from vertices and supporting set operation methods
- New `FitFromFOTF` object to fit using a first order transfer function
- You can now set a custom style as default to replace `plain`
- Many new features for `Curve`, `Scatter` and `Point` objects

New Features

New function `get_styles`

The new function `get_styles` makes it possible to fetch all available styles.

[pr-420](https://github.com/GraphingLib/GraphingLib/pull/420)

Added possibility to plot the area between 2 curves

The method `get_area_between` from the Curve class has a new parameter `other_curve` making it possible to get the area between two Curve objects.

[pr-422](https://github.com/GraphingLib/GraphingLib/pull/422)

Added `add_error_curves` method

Added `add_error_curves` method to the Curve class to display error around a curve with curves instead of error bars.

[pr-426](https://github.com/GraphingLib/GraphingLib/pull/426)

New `aspect_ratio` parameter for Figure

The parameter `aspect_ratio` is used to specify an aspect ratio for the axis scaling. Can take a float, "auto" or "equal".

[pr-428](https://github.com/GraphingLib/GraphingLib/pull/428)

Added absolute value functionality to Curve and Scatter

It is possible to get the absolute value of a Curve or Scatter by passing a Curve or Scatter object to `abs()`.

[pr-432](https://github.com/GraphingLib/GraphingLib/pull/432)

Added object copying methods

All Plottables now have a `copy` method to create a duplicate of the object.

[pr-441](https://github.com/GraphingLib/GraphingLib/pull/441)

Added in-place operators for Curve and Scatter

Implemented in-place operators (`+=`, `-=`, `*=`, `/=` and `**=`) for Curve and Scatter objects.

[pr-442](https://github.com/GraphingLib/GraphingLib/pull/442)

Added `FitFromFOTF` (first order transfer function)

New `FitFromFOTF` object to create fits using a first order transfer function.

[pr-443](https://github.com/GraphingLib/GraphingLib/pull/443)

New Curve and Scatter slicing methods

Curve and Scatter now have `create_slice_x` and `create_slice_y` methods to create a new object from a slice of an existing object.

[pr-448](https://github.com/GraphingLib/GraphingLib/pull/448)

New `Polygon` object

A new `Polygon` object to plot a general polygon from a list of vertices.

[pr-450](https://github.com/GraphingLib/GraphingLib/pull/450)

Added possibility to set different default style

Added two new functions, `set_default_style` to set your default style and `get_default_style` to get the name of the current default style.

[pr-453](https://github.com/GraphingLib/GraphingLib/pull/453)

Getters and setters for every objects' properties

All properties can now be set and retrieved using `object.property` notation.

[pr-464](https://github.com/GraphingLib/GraphingLib/pull/464)

Manual legend placement and columns

Placement of the legend can now be controlled manually in Figures when using `show` and `save`. A number of columns can also be specified.

[pr-481](https://github.com/GraphingLib/GraphingLib/pull/481)

Added support for color maps with Scatter

Scatter has new parameters `color_map` and `show_color_bar` to specify a color map and display the color bar. To be used in combination with `face_color` to provide intensity values.

[pr-503](https://github.com/GraphingLib/GraphingLib/pull/503)

Added support for color cycles and colormaps with Scatter edge_color

The `edge_color` attribute of Scatter objects now accepts a list of colors or intensities. When set to "color cycle" or if this is what the style's default is set to, the edge_color will cycle through the colors in the style's color cycle.

[pr-537](https://github.com/GraphingLib/GraphingLib/pull/537)

DPI resolution now supported

DPI resolution is now available as a style controlled parameter and can be overridden in the Figure and MultiFigure save methods.

[pr-559](https://github.com/GraphingLib/GraphingLib/pull/559)

More flexibility for Point colors

Point face and edge colors can now be set to a color or None (transparent). Text color can also be set to a color or to "same as point" (the default) to match the point color, with the edge color being prioritized over the face color if both aren't None.

[pr-561](https://github.com/GraphingLib/GraphingLib/pull/561)

Other Changes

Use trapezoidal integration for `create_integral_curve`

Changed the method used for numerical integration of curves to work with unevenly spaced data and added a parameter `initial_value`.

[pr-433](https://github.com/GraphingLib/GraphingLib/pull/433)

Simplified `VectorField` options

Options for `VectorField` arrows have been simplified and the arrows shape is now controlled only by `arrow_width` and `arrow_head_size`.

[pr-476](https://github.com/GraphingLib/GraphingLib/pull/476)

Contributors

A total of 3 people contributed to this release.

* [Oddball777](https://github.com/Oddball777)
* [yalap13](https://github.com/yalap13)
* [mamar828](https://github.com/mamar828)

Merged Pull Requests

A total of 19 pull requests were merged for this release.

* [420](https://github.com/GraphingLib/GraphingLib/pull/420) : Added get_styles function
* [422](https://github.com/GraphingLib/GraphingLib/pull/422) : Added possibility to plot area between 2 curves in get_area_between
* [426](https://github.com/GraphingLib/GraphingLib/pull/426) : Added add_error_curves method and default params
* [428](https://github.com/GraphingLib/GraphingLib/pull/428) : Added aspect_ratio to Figure init
* [432](https://github.com/GraphingLib/GraphingLib/pull/432) : Add absolute value functionality to Curve and Scatter classes
* [433](https://github.com/GraphingLib/GraphingLib/pull/433) : Add cumulative trapezoidal integration for creating integral curves
* [441](https://github.com/GraphingLib/GraphingLib/pull/441) : Added object copying methods
* [442](https://github.com/GraphingLib/GraphingLib/pull/442) : Added in place operators for Curves and Scatters
* [443](https://github.com/GraphingLib/GraphingLib/pull/443) : Added FitFrom FOTF (first order transfer function)
* [448](https://github.com/GraphingLib/GraphingLib/pull/448) : 406 feature request curve slicing new curve from part of existing curve
* [450](https://github.com/GraphingLib/GraphingLib/pull/450) : 437 feature request implement arbitrary polygons
* [453](https://github.com/GraphingLib/GraphingLib/pull/453) : 452 feature request possibility to set different default style
* [464](https://github.com/GraphingLib/GraphingLib/pull/464) : 462 feature request use properties with getters and setters
* [476](https://github.com/GraphingLib/GraphingLib/pull/476) : 468 feature request reduce vector field options to be more similar to arrow
* [481](https://github.com/GraphingLib/GraphingLib/pull/481) : Added option for manual legend placement and columns
* [503](https://github.com/GraphingLib/GraphingLib/pull/503) : Added support for colour maps with Scatters
* [537](https://github.com/GraphingLib/GraphingLib/pull/537) : Curve fix fill between color cycle, Scatter flexibility
* [559](https://github.com/GraphingLib/GraphingLib/pull/559) : 558 feature request set dpi when saving
* [561](https://github.com/GraphingLib/GraphingLib/pull/561) : Added flexibility to Point class text color

1.4.0

What's Changed

Highlights

* New Line object
* Various changes in the API :
- Methods that return a GraphingLib object or a list of GraphingLib objects start with ``create_``
- Methods that return information on an object start with ``get_``
- To display a Figure or MultiFigure use ``show()``
- To save a Figure or MultiFigure use ``save()``
- Methods that add visual information to objects (histogram PDF, etc.) start with ``add_``
- Methods used to set properties not set in the object constructor start with ``set_``
- ``add_element()`` is now ``add_elements()``
- MultiFigure`s ``add_sub_figure()`` is now ``add_figure()``

More changes

* A rotation can be applied to custom ticks
* By default a Figure has no axis labels
* Getting coordinates on a Curve is now separated from creating points on it
* Axis limits can be specified for TwinAxis
* Coordinates can be obtained from a Point with ``get_coordinates()``

Bug fixes

* Fixed bug where ``rcParams`` in MultiFigure were not carried over to subfigures
* The ``get_area_between()`` ``fill_under_color`` is the same as the Curve color and not cycling independently
* ``Self`` imports now working with Python 3.10
* Fixed bug where ``rcParams`` were not set when passed to ``_prepare_figure()``

1.3.0

What's Changed
Highlights
* Matplotlib styles are now supported (use "matplotlib" for the matplotlib default style)
* New TwinAxis class to create 2 different x or y axes in the same Figure
* New update_rc_params method on Figures and MultiFigures for full control of visual appearance
* New customize_visual_style function for parameter specification of most common rc params
* New shape objects: Rectangle, Circle, Arrow
* Two new GL figure styles: "dark" and "dim"
* New gl.get_color and gl.get_colors functions to access color cycle colors in figure_styles
More changes
* Added calculate_Rsquared method to Fit objects
* Dynamic figure_style specification now possible (can change style and re display the same Figure)
* Hlines and Vlines now have a line_width parameter
* Histogram: show_pdf is now its own method with more customization options
* MultiFigures are now created from Figure objects. SubFigure class no longer exists
* Heatmaps can now be created from points
* Figure ticks can be changed to text with the set_ticks method
* Can now remove axes in Figure
* as_point_object option in get_point_at_x/y, intersection, etc. Returns tuple if False, Point object if True
* Mirrored dunder method for operations on curves and scatter objects
* Helper class methods for creating MultiFigures as rows, stacks, or grids
* Many bug fixes


**Full Changelog**: https://github.com/GraphingLib/GraphingLib/compare/v1.2.2...v1.3.0

1.2.2

What's Changed

- Compatible with Python 3.12
- Fixed the z_order that was not the same as the order the elements were added to the Figure/SubFigure in some cases
- Added location and number of columns parameters for the general legend in MultiFigure

**Full Changelog**: https://github.com/GraphingLib/GraphingLib/compare/v1.2.1...v1.2.2

1.2.1

Corrected bugs

- SubFigure placement is now separated into 4 parameters: start row, start column, number of rows spanned, number of columns spanned
- Colors in the plain figure style's cycle are tweaked to be more visible on white background
- The color of the fill_under in Curve.area_between can be set by fill_color
- Plotting method for Curve and Scatter changed to errorbar so that managing cycling colors of Scatter and Curve and their errorbars
- Labels removed for the residual curves of the Fit objects

**Full Changelog**: https://github.com/GraphingLib/GraphingLib/compare/v1.2.0...v1.2.1

1.2.0

What's Changed

New documentation available at https://graphinglib.readthedocs.io/en/latest/

New features

- New command-line interface to create and modify figure styles
- Stream class allows the user to display stream plots
- Table class allows the user to display data tables in Figures and SubFigures
- Default colours for curves and scatters now using colour cycles
- New option to remove axes in SubFigures
- New option to add reference labels ("a)", "b)", "c)", etc.) next to SubFigures

Corrected bugs

- Legends in MultiFigures are now separated in their respective SubFigures by default, and are outside all SubFigures if combined
- Custom figure styles are automatically updated after a new GL version (to add info for new parameters or new classes)
- Specifying only one of x_error or y_error is now possible in Curves and Scatters
- Can now use the same object in two Figures/MultiFigures using different styles (only one style would show up previously)

New Contributors
* arshad-ml made their first contribution in https://github.com/GraphingLib/GraphingLib/pull/225

**Full Changelog**: https://github.com/GraphingLib/GraphingLib/compare/v1.1.0...v1.2.0

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.