tikzplot42 0.4.6__tar.gz → 0.5.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.
Files changed (50) hide show
  1. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/PKG-INFO +13 -13
  2. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/README.md +9 -6
  3. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/pyproject.toml +4 -7
  4. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/axes.py +446 -155
  5. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/axes.pyi +149 -2
  6. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/colorbar.py +4 -1
  7. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/colorbar.pyi +16 -0
  8. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/elements.py +93 -17
  9. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/figure.py +73 -25
  10. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/figure.pyi +4 -2
  11. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/plots.py +18 -4
  12. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/plots.pyi +181 -31
  13. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot42.egg-info/PKG-INFO +13 -13
  14. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot42.egg-info/SOURCES.txt +2 -0
  15. tikzplot42-0.5.0/tests/test13.py +62 -0
  16. tikzplot42-0.5.0/tests/test14.py +37 -0
  17. tikzplot42-0.5.0/tests/test15.py +40 -0
  18. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test2.py +1 -1
  19. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test7.py +1 -1
  20. tikzplot42-0.4.6/tests/test13.py +0 -29
  21. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/LICENSE +0 -0
  22. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/setup.cfg +0 -0
  23. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/__init__.py +0 -0
  24. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/__init__.pyi +0 -0
  25. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/axes3d.py +0 -0
  26. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/axes3d.pyi +0 -0
  27. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/colors.py +0 -0
  28. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/config.py +0 -0
  29. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/config.pyi +0 -0
  30. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/elements.pyi +0 -0
  31. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/latex_special.py +0 -0
  32. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/py.typed +0 -0
  33. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/state.py +0 -0
  34. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/styles.py +0 -0
  35. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/styles.pyi +0 -0
  36. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot/texts.py +0 -0
  37. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot42.egg-info/dependency_links.txt +0 -0
  38. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot42.egg-info/requires.txt +0 -0
  39. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/src/tikzplot42.egg-info/top_level.txt +0 -0
  40. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test1.py +0 -0
  41. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test10.py +0 -0
  42. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test11.py +0 -0
  43. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test12.py +0 -0
  44. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test3.py +0 -0
  45. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test4.py +0 -0
  46. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test5.py +0 -0
  47. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test6.py +0 -0
  48. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test8.py +0 -0
  49. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test9.py +0 -0
  50. {tikzplot42-0.4.6 → tikzplot42-0.5.0}/tests/test_styles.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tikzplot42
3
- Version: 0.4.6
3
+ Version: 0.5.0
4
4
  Summary: TikzPlot to make TikZ/PGFPlots plots with matplotlib.pyplot-like syntax.
5
5
  Author-email: Zan Ambrozic <zan.ambrozic7@gmail.com>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -686,14 +686,11 @@ Classifier: Development Status :: 3 - Alpha
686
686
  Classifier: Intended Audience :: Science/Research
687
687
  Classifier: Intended Audience :: Developers
688
688
  Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
689
- Classifier: Programming Language :: Python :: 3
690
- Classifier: Programming Language :: Python :: 3 :: Only
691
- Classifier: Programming Language :: Python :: 3.9
692
- Classifier: Programming Language :: Python :: 3.10
693
- Classifier: Programming Language :: Python :: 3.11
694
689
  Classifier: Programming Language :: Python :: 3.12
690
+ Classifier: Programming Language :: Python :: 3.13
691
+ Classifier: Programming Language :: Python :: 3.14
695
692
  Classifier: Topic :: Scientific/Engineering :: Visualization
696
- Requires-Python: >=3.9
693
+ Requires-Python: >=3.12
697
694
  Description-Content-Type: text/markdown
698
695
  License-File: LICENSE
699
696
  Requires-Dist: numpy
@@ -703,27 +700,29 @@ Dynamic: license-file
703
700
  # TikzPlot
704
701
  A clean version of PltToTikz, this time as Python package. Easy to use: only replace import matplotlib.pyplot with this library.
705
702
 
706
- Please let me know if you find any bugs or unexpected behaviour. Examples may be found in repository under `tests/` directory.
703
+ Please report any bugs or unexpected behaviour in Issues. Examples may be found in repository under `tests/` directory.
707
704
 
708
705
  <p align="center">
709
706
  <img src="https://raw.githubusercontent.com/ZanAmb/TikzPlot/main/tests/demo.png" width="60%">
710
707
  </p>
711
708
 
712
709
  # Installation
713
- NEW: PyPI: `pip install tikzplot42`.
710
+ PyPI: `pip install tikzplot42`.
714
711
  Alternativley, download this package and install using: `pip install [path]`, where [path] is the path to the directory, containing `pyproject.toml`.
715
712
 
716
713
  ## Python usage
717
714
  Instead of using `import matplotlib.pyplot (as plt)`, use `import tikzplot.plots (as plt)`.
718
715
 
719
716
  ## LaTeX requirements
717
+ All required packages are automatically detected and can be printed at save using kwarg `print_requirements=True` (for standalone files, preambule is automatically added).
720
718
  - `\usepackage{tikz}`,
721
719
  - `\usepackage{pgfplots}`,
722
720
  - `\pgfplotsset{compat=1.18}` (may be lower, but compilation is not guaranteed),
723
721
  - `\usepgfplotslibrary{fillbetween}` (if you use fill-between plots),
724
722
  - `\usepgfplotslibrary{groupplots}` (recommended for best results, enabled by default, may be avoided by setting TikzConfig USE_GROUPPLOTS=False),
725
723
  - `\usepackage{xcolor}` (recommended for best colors, works without but needs change of TikzConfig USE_XCOLOR=False),
726
- - `\usepgfplotslibrary{polar}` required for polar axis.
724
+ - `\usepgfplotslibrary{polar}` required for polar axis,
725
+ - `\usetikzlibrary{patterns.meta}` for hatch patterns (available for fill_between, hist and axvspan/axhspan).
727
726
 
728
727
  Export using `plt.savefig("example_graph.tex")` (recommended) or `plt.show()`.
729
728
  Then use the generated file as `\input{example_graph.tex}`.
@@ -739,7 +738,8 @@ Some basic plot commands are already implemented with commonly used arguments:
739
738
  - `stem()`,
740
739
  - `fill_between()`,
741
740
  - `hlines()/vlines()`,
742
- - `histogram()`,
741
+ - `hist()`,
742
+ - `bar()/barh()`,
743
743
  - `step()`,
744
744
  - `imshow()`,
745
745
  - `text()`,
@@ -768,7 +768,7 @@ If axes and plot have different name for command with same effect, both are impl
768
768
  There is a limited support for built-in styles (e.g. `plt.style.use("default")`), you may also define your own style using `plt.style.set_profile()`. Currently supported features are: color cycle (hex colors sequence), line width (in pt), grid (with matplotlib kwargs), background (latex style key=value), additional settings (raw latex code for optional arguments to axis: key=value).
769
769
 
770
770
  #### Supported common **kwargs
771
- - `color/c` (all matplotlib formats, except color schemes which are not yet implemented),
771
+ - `color/c`,
772
772
  - `linestyle/ls`,
773
773
  - `linewidth/ls`,
774
774
  - `fmt`,
@@ -790,6 +790,6 @@ For plot configurations (default sizes, paddings, etc.), use `from tikzplot impo
790
790
  Currently supported parameters are listed with their default values in `src/tikzplot/config.py`.
791
791
 
792
792
  ## More features coming soon...
793
- - more developed styles,
793
+ - additional arguments supprot for implemented commands,
794
794
  - improved 3D plots (currently only basic support: plot, errorbar, fill_between, scatter, plot_wireframe, plot_surface),
795
795
  - ...
@@ -1,27 +1,29 @@
1
1
  # TikzPlot
2
2
  A clean version of PltToTikz, this time as Python package. Easy to use: only replace import matplotlib.pyplot with this library.
3
3
 
4
- Please let me know if you find any bugs or unexpected behaviour. Examples may be found in repository under `tests/` directory.
4
+ Please report any bugs or unexpected behaviour in Issues. Examples may be found in repository under `tests/` directory.
5
5
 
6
6
  <p align="center">
7
7
  <img src="https://raw.githubusercontent.com/ZanAmb/TikzPlot/main/tests/demo.png" width="60%">
8
8
  </p>
9
9
 
10
10
  # Installation
11
- NEW: PyPI: `pip install tikzplot42`.
11
+ PyPI: `pip install tikzplot42`.
12
12
  Alternativley, download this package and install using: `pip install [path]`, where [path] is the path to the directory, containing `pyproject.toml`.
13
13
 
14
14
  ## Python usage
15
15
  Instead of using `import matplotlib.pyplot (as plt)`, use `import tikzplot.plots (as plt)`.
16
16
 
17
17
  ## LaTeX requirements
18
+ All required packages are automatically detected and can be printed at save using kwarg `print_requirements=True` (for standalone files, preambule is automatically added).
18
19
  - `\usepackage{tikz}`,
19
20
  - `\usepackage{pgfplots}`,
20
21
  - `\pgfplotsset{compat=1.18}` (may be lower, but compilation is not guaranteed),
21
22
  - `\usepgfplotslibrary{fillbetween}` (if you use fill-between plots),
22
23
  - `\usepgfplotslibrary{groupplots}` (recommended for best results, enabled by default, may be avoided by setting TikzConfig USE_GROUPPLOTS=False),
23
24
  - `\usepackage{xcolor}` (recommended for best colors, works without but needs change of TikzConfig USE_XCOLOR=False),
24
- - `\usepgfplotslibrary{polar}` required for polar axis.
25
+ - `\usepgfplotslibrary{polar}` required for polar axis,
26
+ - `\usetikzlibrary{patterns.meta}` for hatch patterns (available for fill_between, hist and axvspan/axhspan).
25
27
 
26
28
  Export using `plt.savefig("example_graph.tex")` (recommended) or `plt.show()`.
27
29
  Then use the generated file as `\input{example_graph.tex}`.
@@ -37,7 +39,8 @@ Some basic plot commands are already implemented with commonly used arguments:
37
39
  - `stem()`,
38
40
  - `fill_between()`,
39
41
  - `hlines()/vlines()`,
40
- - `histogram()`,
42
+ - `hist()`,
43
+ - `bar()/barh()`,
41
44
  - `step()`,
42
45
  - `imshow()`,
43
46
  - `text()`,
@@ -66,7 +69,7 @@ If axes and plot have different name for command with same effect, both are impl
66
69
  There is a limited support for built-in styles (e.g. `plt.style.use("default")`), you may also define your own style using `plt.style.set_profile()`. Currently supported features are: color cycle (hex colors sequence), line width (in pt), grid (with matplotlib kwargs), background (latex style key=value), additional settings (raw latex code for optional arguments to axis: key=value).
67
70
 
68
71
  #### Supported common **kwargs
69
- - `color/c` (all matplotlib formats, except color schemes which are not yet implemented),
72
+ - `color/c`,
70
73
  - `linestyle/ls`,
71
74
  - `linewidth/ls`,
72
75
  - `fmt`,
@@ -88,6 +91,6 @@ For plot configurations (default sizes, paddings, etc.), use `from tikzplot impo
88
91
  Currently supported parameters are listed with their default values in `src/tikzplot/config.py`.
89
92
 
90
93
  ## More features coming soon...
91
- - more developed styles,
94
+ - additional arguments supprot for implemented commands,
92
95
  - improved 3D plots (currently only basic support: plot, errorbar, fill_between, scatter, plot_wireframe, plot_surface),
93
96
  - ...
@@ -4,13 +4,13 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "tikzplot42"
7
- version = "0.4.6"
7
+ version = "0.5.0"
8
8
  description = "TikzPlot to make TikZ/PGFPlots plots with matplotlib.pyplot-like syntax."
9
9
  authors = [
10
10
  { name = "Zan Ambrozic", email = "zan.ambrozic7@gmail.com" }
11
11
  ]
12
12
  readme = "README.md"
13
- requires-python = ">=3.9"
13
+ requires-python = ">=3.12"
14
14
  license = { file = "LICENSE" }
15
15
  keywords = ["tikz", "pgfplots", "matplotlib", "latex", "plotting"]
16
16
  classifiers = [
@@ -18,12 +18,9 @@ classifiers = [
18
18
  "Intended Audience :: Science/Research",
19
19
  "Intended Audience :: Developers",
20
20
  "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
21
- "Programming Language :: Python :: 3",
22
- "Programming Language :: Python :: 3 :: Only",
23
- "Programming Language :: Python :: 3.9",
24
- "Programming Language :: Python :: 3.10",
25
- "Programming Language :: Python :: 3.11",
26
21
  "Programming Language :: Python :: 3.12",
22
+ "Programming Language :: Python :: 3.13",
23
+ "Programming Language :: Python :: 3.14",
27
24
  "Topic :: Scientific/Engineering :: Visualization",
28
25
  ]
29
26
  dependencies = ["numpy", "matplotlib"]