maidr 1.7.3__tar.gz → 1.8.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.
- {maidr-1.7.3 → maidr-1.8.0}/CHANGELOG.md +18 -0
- {maidr-1.7.3 → maidr-1.8.0}/PKG-INFO +1 -1
- {maidr-1.7.3 → maidr-1.8.0}/maidr/__init__.py +1 -1
- maidr-1.8.0/maidr/api.py +155 -0
- {maidr-1.7.3 → maidr-1.8.0}/pyproject.toml +3 -2
- {maidr-1.7.3 → maidr-1.8.0}/uv.lock +1426 -1083
- maidr-1.7.3/maidr/api.py +0 -64
- {maidr-1.7.3 → maidr-1.8.0}/.commitlintrc.cjs +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.editorconfig +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/copilot-instructions.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/workflows/ci.yml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/workflows/docs.yml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.github/workflows/release.yml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.gitignore +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.pre-commit-config.yaml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.vscode/extensions.json +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/.vscode/settings.json +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/CONDUCT.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/CONTRIBUTING.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/LICENSE +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/README.md +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/.gitignore +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/CNAME +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_environment +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/machow/interlinks/.gitignore +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/machow/interlinks/_extension.yml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/machow/interlinks/interlinks.lua +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/shafayetShafee/line-highlight/_extension.yml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/shafayetShafee/line-highlight/line-highlight.lua +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/shafayetShafee/line-highlight/resources/css/line-highlight.css +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_extensions/shafayetShafee/line-highlight/resources/js/line-highlight.js +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/_quarto.yml +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/examples.qmd +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/index.qmd +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/docs/styles.css +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/bar/example_bar_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/bar/matplotlib/example_mpl_bar_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/bar/seaborn/example_sns_bar_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/box/example_box_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/box/matplotlib/example_mpl_box.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/box/seaborn/example_sns_box.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/legacy_candlestick_example.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/mplfinance_candlestick_example.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/test_data_daily_current_year.csv +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/test_data_daily_mixed_years.csv +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/test_data_hourly.csv +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/test_data_minute.csv +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/test_data_weekly.csv +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/candle_stick/volcandat.csv +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/count/example_count_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/count/seaborn/example_sns_count_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/dodged/matplotlib/example_mpl_dodged.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/dodged/seaborn/example_sns_dodged.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/facet-subplots/matplotlib/example_mpl_facet_bar_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/facet-subplots/matplotlib/example_mpl_facet_combined_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/facet-subplots/seaborn/example_sns_facet_bar_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/facet-subplots/seaborn/example_sns_facet_combined_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/flask/test_flask_app.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/heatmap/example_heatmap_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/heatmap/matplotlib/example_mpl_heatmap.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/heatmap/seaborn/example_sns_heatmap.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/histogram/example_histogram_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/histogram/matplotlib/example_mpl_hist.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/histogram/matplotlib/histogram_with_kde_matplotlib.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/histogram/seaborn/example_sns_hist.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/histogram/seaborn/histogram_with_kde_seaborn.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/kde/example_kde_plots.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/kde/matplotlib/multiple_kde_matplotlib.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/kde/matplotlib/single_kde_matplotlib.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/kde/seaborn/multiple_kde_seaborn.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/kde/seaborn/single_kde_seaborn.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/line/example_line_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/line/matplotlib/example_mpl_line.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/line/seaborn/example_sns_line.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multilayer/example_mpl_multilayer.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multilayer/example_multilayer_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multiline/example_multiline_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multiline/matplotlib/example_mpl_multiline.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multiline/seaborn/example_sns_multiline.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multipanel/example_multipanel_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multipanel/matplotlib/example_mpl_multipanel.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/multipanel/seaborn/example_sns_multipanel.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/quarto/demo.qmd +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/reg/example_reg_plots.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/reg/matplotlib/example_matplotlib_smooth_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/reg/seaborn/example_sns_reg.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/scatter/example_scatter_plot.ipynb +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/scatter/matplotlib/example_mpl_scatter.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/scatter/seaborn/example_sns_scatter.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/shiny/example_shiny_scatter.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/stacked/matplotlib/example_mpl_stacked.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/stacked/seaborn/example_sns_stacked.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/example/streamlit/example_streamlit_app.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/context_manager.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/enum/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/enum/library.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/enum/maidr_key.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/enum/plot_type.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/enum/smooth_keywords.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/figure_manager.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/maidr.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/barplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/boxplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/candlestick.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/grouped_barplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/heatmap.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/histogram.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/lineplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/maidr_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/maidr_plot_factory.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/mplfinance_barplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/mplfinance_lineplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/regplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/core/plot/scatterplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/exception/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/exception/extraction_error.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/barplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/boxplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/candlestick.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/clear.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/common.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/heatmap.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/highlight.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/histogram.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/kdeplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/lineplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/mplfinance.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/regplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/patch/scatterplot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/datetime_conversion.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/dedup_utils.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/environment.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/mixin/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/mixin/extractor_mixin.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/mixin/merger_mixin.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/mplfinance_utils.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/plot_detection.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/regression_line_utils.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/util/svg_utils.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/widget/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/maidr/widget/shiny.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/conftest.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/core/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/core/enum/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/core/plot/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/core/test_figure_manager.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/core/test_maidr_plot.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/core/test_maidr_plot_factory.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/fixture/__init__.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/fixture/library_factory.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/fixture/matplotlib_factory.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tests/fixture/seaborn_factory.py +0 -0
- {maidr-1.7.3 → maidr-1.8.0}/tox.ini +0 -0
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## v1.8.0 (2025-09-17)
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
- Remove maidr.show params ([#244](https://github.com/xability/py-maidr/pull/244),
|
|
9
|
+
[`493cf57`](https://github.com/xability/py-maidr/commit/493cf5713068b1514b4836e46763c3619a51dd23))
|
|
10
|
+
|
|
11
|
+
### Refactoring
|
|
12
|
+
|
|
13
|
+
- **maidr.api**: Improve lazy figure detection, eliminate code duplication, and resolve merge
|
|
14
|
+
conflicts ([#241](https://github.com/xability/py-maidr/pull/241),
|
|
15
|
+
[`15a966e`](https://github.com/xability/py-maidr/commit/15a966ea2ca9170ddf8bc28634705fb6233a1d58))
|
|
16
|
+
|
|
17
|
+
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
|
|
18
|
+
|
|
19
|
+
Co-authored-by: jooyoungseo <19754711+jooyoungseo@users.noreply.github.com>
|
|
20
|
+
|
|
21
|
+
|
|
4
22
|
## v1.7.3 (2025-09-15)
|
|
5
23
|
|
|
6
24
|
### Bug Fixes
|
maidr-1.8.0/maidr/api.py
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from typing import Any, Literal
|
|
4
|
+
|
|
5
|
+
from htmltools import Tag
|
|
6
|
+
from matplotlib.axes import Axes
|
|
7
|
+
from matplotlib.container import BarContainer
|
|
8
|
+
|
|
9
|
+
from maidr.core import Maidr
|
|
10
|
+
from maidr.core.enum import PlotType
|
|
11
|
+
from maidr.core.figure_manager import FigureManager
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def _get_plot_or_current(plot: Any | None) -> Any:
|
|
15
|
+
"""
|
|
16
|
+
Get the plot object or current matplotlib figure if plot is None.
|
|
17
|
+
|
|
18
|
+
Parameters
|
|
19
|
+
----------
|
|
20
|
+
plot : Any or None
|
|
21
|
+
The plot object. If None, returns the current matplotlib figure.
|
|
22
|
+
|
|
23
|
+
Returns
|
|
24
|
+
-------
|
|
25
|
+
Any
|
|
26
|
+
The plot object or current matplotlib figure.
|
|
27
|
+
"""
|
|
28
|
+
if plot is None:
|
|
29
|
+
# Lazy import matplotlib.pyplot when needed
|
|
30
|
+
import matplotlib.pyplot as plt
|
|
31
|
+
|
|
32
|
+
return plt.gcf()
|
|
33
|
+
return plot
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def render(plot: Any | None = None) -> Tag:
|
|
37
|
+
"""
|
|
38
|
+
Render a MAIDR plot to HTML.
|
|
39
|
+
|
|
40
|
+
Parameters
|
|
41
|
+
----------
|
|
42
|
+
plot : Any or None, optional
|
|
43
|
+
The plot object to render. If None, uses the current matplotlib figure.
|
|
44
|
+
|
|
45
|
+
Returns
|
|
46
|
+
-------
|
|
47
|
+
htmltools.Tag
|
|
48
|
+
The rendered HTML representation of the plot.
|
|
49
|
+
"""
|
|
50
|
+
plot = _get_plot_or_current(plot)
|
|
51
|
+
|
|
52
|
+
ax = FigureManager.get_axes(plot)
|
|
53
|
+
if isinstance(ax, list):
|
|
54
|
+
for axes in ax:
|
|
55
|
+
maidr = FigureManager.get_maidr(axes.get_figure())
|
|
56
|
+
return maidr.render()
|
|
57
|
+
else:
|
|
58
|
+
maidr = FigureManager.get_maidr(ax.get_figure())
|
|
59
|
+
return maidr.render()
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
def show(
|
|
63
|
+
plot: Any | None = None,
|
|
64
|
+
renderer: Literal["auto", "ipython", "browser"] = "auto",
|
|
65
|
+
clear_fig: bool = True,
|
|
66
|
+
) -> object:
|
|
67
|
+
"""
|
|
68
|
+
Display a MAIDR plot.
|
|
69
|
+
|
|
70
|
+
Parameters
|
|
71
|
+
----------
|
|
72
|
+
plot : Any or None, optional
|
|
73
|
+
The plot object to display. If None, uses the current matplotlib figure.
|
|
74
|
+
renderer : {"auto", "ipython", "browser"}, default "auto"
|
|
75
|
+
The renderer to use for display.
|
|
76
|
+
clear_fig : bool, default True
|
|
77
|
+
Whether to clear the figure after displaying.
|
|
78
|
+
|
|
79
|
+
Returns
|
|
80
|
+
-------
|
|
81
|
+
object
|
|
82
|
+
The display result.
|
|
83
|
+
"""
|
|
84
|
+
plot = _get_plot_or_current(plot)
|
|
85
|
+
|
|
86
|
+
ax = FigureManager.get_axes(plot)
|
|
87
|
+
if isinstance(ax, list):
|
|
88
|
+
for axes in ax:
|
|
89
|
+
maidr = FigureManager.get_maidr(axes.get_figure())
|
|
90
|
+
return maidr.show(renderer)
|
|
91
|
+
else:
|
|
92
|
+
maidr = FigureManager.get_maidr(ax.get_figure())
|
|
93
|
+
return maidr.show(renderer, clear_fig=clear_fig)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def save_html(
|
|
97
|
+
plot: Any | None = None,
|
|
98
|
+
*,
|
|
99
|
+
file: str,
|
|
100
|
+
lib_dir: str | None = "lib",
|
|
101
|
+
include_version: bool = True
|
|
102
|
+
) -> str:
|
|
103
|
+
"""
|
|
104
|
+
Save a MAIDR plot as HTML file.
|
|
105
|
+
|
|
106
|
+
Parameters
|
|
107
|
+
----------
|
|
108
|
+
plot : Any or None, optional
|
|
109
|
+
The plot object to save. If None, uses the current matplotlib figure.
|
|
110
|
+
file : str
|
|
111
|
+
The file path where to save the HTML.
|
|
112
|
+
lib_dir : str or None, default "lib"
|
|
113
|
+
Directory name for libraries.
|
|
114
|
+
include_version : bool, default True
|
|
115
|
+
Whether to include version information.
|
|
116
|
+
|
|
117
|
+
Returns
|
|
118
|
+
-------
|
|
119
|
+
str
|
|
120
|
+
The path to the saved HTML file.
|
|
121
|
+
"""
|
|
122
|
+
plot = _get_plot_or_current(plot)
|
|
123
|
+
|
|
124
|
+
ax = FigureManager.get_axes(plot)
|
|
125
|
+
htmls = []
|
|
126
|
+
if isinstance(ax, list):
|
|
127
|
+
for axes in ax:
|
|
128
|
+
maidr = FigureManager.get_maidr(axes.get_figure())
|
|
129
|
+
htmls.append(maidr._create_html_doc(use_iframe=False))
|
|
130
|
+
return htmls[-1].save_html(
|
|
131
|
+
file, libdir=lib_dir, include_version=include_version
|
|
132
|
+
)
|
|
133
|
+
else:
|
|
134
|
+
maidr = FigureManager.get_maidr(ax.get_figure())
|
|
135
|
+
return maidr.save_html(file, lib_dir=lib_dir, include_version=include_version)
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def stacked(plot: Axes | BarContainer) -> Maidr:
|
|
139
|
+
ax = FigureManager.get_axes(plot)
|
|
140
|
+
return FigureManager.create_maidr(ax, PlotType.STACKED)
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
def close(plot: Any | None = None) -> None:
|
|
144
|
+
"""
|
|
145
|
+
Close a MAIDR plot and clean up resources.
|
|
146
|
+
|
|
147
|
+
Parameters
|
|
148
|
+
----------
|
|
149
|
+
plot : Any or None, optional
|
|
150
|
+
The plot object to close. If None, uses the current matplotlib figure.
|
|
151
|
+
"""
|
|
152
|
+
plot = _get_plot_or_current(plot)
|
|
153
|
+
|
|
154
|
+
ax = FigureManager.get_axes(plot)
|
|
155
|
+
FigureManager.destroy(ax.get_figure())
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "maidr"
|
|
7
|
-
version = "1.
|
|
7
|
+
version = "1.8.0"
|
|
8
8
|
description = "Multimodal Access and Interactive Data Representations"
|
|
9
9
|
authors = [
|
|
10
10
|
{ name = "JooYoung Seo", email = "jseo1005@illinois.edu" },
|
|
@@ -82,7 +82,8 @@ dev = [
|
|
|
82
82
|
"python-semantic-release==9.21.0",
|
|
83
83
|
"pytest-mock>=3.12.0,<4",
|
|
84
84
|
"tox>=4.13.0,<5",
|
|
85
|
-
"quartodoc>=0.8.0,<0.9"
|
|
85
|
+
"quartodoc>=0.8.0,<0.9",
|
|
86
|
+
"griffe>=0.48,<1.0"
|
|
86
87
|
]
|
|
87
88
|
|
|
88
89
|
[tool.ruff]
|