plotstyle 0.1.0a1__py3-none-any.whl

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 (60) hide show
  1. plotstyle/__init__.py +121 -0
  2. plotstyle/_utils/__init__.py +0 -0
  3. plotstyle/_utils/io.py +113 -0
  4. plotstyle/_utils/warnings.py +86 -0
  5. plotstyle/_version.py +24 -0
  6. plotstyle/cli/__init__.py +0 -0
  7. plotstyle/cli/main.py +553 -0
  8. plotstyle/color/__init__.py +42 -0
  9. plotstyle/color/_rendering.py +86 -0
  10. plotstyle/color/accessibility.py +286 -0
  11. plotstyle/color/data/okabe_ito.json +5 -0
  12. plotstyle/color/data/safe_grayscale.json +7 -0
  13. plotstyle/color/data/tol_bright.json +5 -0
  14. plotstyle/color/data/tol_muted.json +5 -0
  15. plotstyle/color/data/tol_vibrant.json +5 -0
  16. plotstyle/color/grayscale.py +284 -0
  17. plotstyle/color/palettes.py +259 -0
  18. plotstyle/core/__init__.py +0 -0
  19. plotstyle/core/export.py +418 -0
  20. plotstyle/core/figure.py +394 -0
  21. plotstyle/core/migrate.py +579 -0
  22. plotstyle/core/style.py +394 -0
  23. plotstyle/engine/__init__.py +0 -0
  24. plotstyle/engine/fonts.py +309 -0
  25. plotstyle/engine/latex.py +287 -0
  26. plotstyle/engine/rcparams.py +352 -0
  27. plotstyle/integrations/__init__.py +0 -0
  28. plotstyle/integrations/seaborn.py +305 -0
  29. plotstyle/preview/__init__.py +50 -0
  30. plotstyle/preview/gallery.py +337 -0
  31. plotstyle/preview/print_size.py +304 -0
  32. plotstyle/py.typed +0 -0
  33. plotstyle/specs/__init__.py +304 -0
  34. plotstyle/specs/_templates.toml +48 -0
  35. plotstyle/specs/acs.toml +36 -0
  36. plotstyle/specs/cell.toml +35 -0
  37. plotstyle/specs/elsevier.toml +35 -0
  38. plotstyle/specs/ieee.toml +35 -0
  39. plotstyle/specs/nature.toml +35 -0
  40. plotstyle/specs/plos.toml +35 -0
  41. plotstyle/specs/prl.toml +35 -0
  42. plotstyle/specs/schema.py +1095 -0
  43. plotstyle/specs/science.toml +35 -0
  44. plotstyle/specs/springer.toml +35 -0
  45. plotstyle/specs/units.py +761 -0
  46. plotstyle/specs/wiley.toml +35 -0
  47. plotstyle/validation/__init__.py +94 -0
  48. plotstyle/validation/checks/__init__.py +95 -0
  49. plotstyle/validation/checks/_base.py +149 -0
  50. plotstyle/validation/checks/colors.py +394 -0
  51. plotstyle/validation/checks/dimensions.py +166 -0
  52. plotstyle/validation/checks/export.py +205 -0
  53. plotstyle/validation/checks/lines.py +147 -0
  54. plotstyle/validation/checks/typography.py +200 -0
  55. plotstyle/validation/report.py +293 -0
  56. plotstyle-0.1.0a1.dist-info/METADATA +271 -0
  57. plotstyle-0.1.0a1.dist-info/RECORD +60 -0
  58. plotstyle-0.1.0a1.dist-info/WHEEL +4 -0
  59. plotstyle-0.1.0a1.dist-info/entry_points.txt +2 -0
  60. plotstyle-0.1.0a1.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,35 @@
1
+ [metadata]
2
+ name = "Cell"
3
+ publisher = "Cell Press"
4
+ source_url = "https://www.cell.com/figure-guidelines"
5
+ last_verified = "2026-04-02"
6
+ verified_by = "plotstyle"
7
+
8
+ [dimensions]
9
+ single_column_mm = 85.0
10
+ double_column_mm = 174.0
11
+ max_height_mm = 240.0
12
+
13
+ [typography]
14
+ font_family = ["Helvetica", "Arial"]
15
+ font_fallback = "sans-serif"
16
+ min_font_pt = 6.0
17
+ max_font_pt = 8.0
18
+ panel_label_pt = 8.0
19
+ panel_label_weight = "bold"
20
+ panel_label_case = "upper"
21
+
22
+ [export]
23
+ preferred_formats = ["tiff", "pdf", "eps"]
24
+ min_dpi = 300
25
+ color_space = "RGB"
26
+ font_embedding = true
27
+ editable_text = false
28
+
29
+ [color]
30
+ avoid_combinations = [["red", "green"]]
31
+ colorblind_required = true
32
+ grayscale_required = false
33
+
34
+ [line]
35
+ min_weight_pt = 0.5
@@ -0,0 +1,35 @@
1
+ [metadata]
2
+ name = "Elsevier"
3
+ publisher = "Elsevier"
4
+ source_url = "https://www.elsevier.com/about/policies-and-standards/author/artwork-and-media-instructions/artwork-sizing"
5
+ last_verified = "2026-04-02"
6
+ verified_by = "plotstyle"
7
+
8
+ [dimensions]
9
+ single_column_mm = 90.0
10
+ double_column_mm = 190.0
11
+ max_height_mm = 240.0
12
+
13
+ [typography]
14
+ font_family = ["Helvetica", "Arial", "Times New Roman"]
15
+ font_fallback = "sans-serif"
16
+ min_font_pt = 6.0
17
+ max_font_pt = 8.0
18
+ panel_label_pt = 8.0
19
+ panel_label_weight = "bold"
20
+ panel_label_case = "upper"
21
+
22
+ [export]
23
+ preferred_formats = ["tiff", "eps", "pdf"]
24
+ min_dpi = 300
25
+ color_space = "RGB"
26
+ font_embedding = true
27
+ editable_text = false
28
+
29
+ [color]
30
+ avoid_combinations = [["red", "green"]]
31
+ colorblind_required = true
32
+ grayscale_required = false
33
+
34
+ [line]
35
+ min_weight_pt = 0.25
@@ -0,0 +1,35 @@
1
+ [metadata]
2
+ name = "IEEE Transactions"
3
+ publisher = "IEEE"
4
+ source_url = "https://journals.ieeeauthorcenter.ieee.org/your-role-in-article-production/ieee-graphics-analyzer/"
5
+ last_verified = "2026-04-02"
6
+ verified_by = "plotstyle"
7
+
8
+ [dimensions]
9
+ single_column_mm = 88.9
10
+ double_column_mm = 182.0
11
+ max_height_mm = 216.0
12
+
13
+ [typography]
14
+ font_family = ["Times New Roman", "Times"]
15
+ font_fallback = "serif"
16
+ min_font_pt = 8.0
17
+ max_font_pt = 10.0
18
+ panel_label_pt = 8.0
19
+ panel_label_weight = "normal"
20
+ panel_label_case = "parens_lower"
21
+
22
+ [export]
23
+ preferred_formats = ["pdf", "eps", "png", "tiff"]
24
+ min_dpi = 600
25
+ color_space = "RGB"
26
+ font_embedding = true
27
+ editable_text = false
28
+
29
+ [color]
30
+ avoid_combinations = [["red", "green"]]
31
+ colorblind_required = true
32
+ grayscale_required = true
33
+
34
+ [line]
35
+ min_weight_pt = 0.5
@@ -0,0 +1,35 @@
1
+ [metadata]
2
+ name = "Nature"
3
+ publisher = "Springer Nature"
4
+ source_url = "https://www.nature.com/nature/for-authors/final-submission"
5
+ last_verified = "2026-04-02"
6
+ verified_by = "plotstyle"
7
+
8
+ [dimensions]
9
+ single_column_mm = 89.0
10
+ double_column_mm = 183.0
11
+ max_height_mm = 247.0
12
+
13
+ [typography]
14
+ font_family = ["Helvetica", "Arial"]
15
+ font_fallback = "sans-serif"
16
+ min_font_pt = 5.0
17
+ max_font_pt = 7.0
18
+ panel_label_pt = 8.0
19
+ panel_label_weight = "bold"
20
+ panel_label_case = "lower"
21
+
22
+ [export]
23
+ preferred_formats = ["tiff", "pdf", "eps"]
24
+ min_dpi = 300
25
+ color_space = "RGB"
26
+ font_embedding = true
27
+ editable_text = true
28
+
29
+ [color]
30
+ avoid_combinations = [["red", "green"]]
31
+ colorblind_required = true
32
+ grayscale_required = false
33
+
34
+ [line]
35
+ min_weight_pt = 0.25
@@ -0,0 +1,35 @@
1
+ [metadata]
2
+ name = "PLOS ONE"
3
+ publisher = "Public Library of Science"
4
+ source_url = "https://journals.plos.org/plosone/s/figures"
5
+ last_verified = "2026-04-02"
6
+ verified_by = "plotstyle"
7
+
8
+ [dimensions]
9
+ single_column_mm = 132.0
10
+ double_column_mm = 190.5
11
+ max_height_mm = 222.3
12
+
13
+ [typography]
14
+ font_family = ["Arial", "Helvetica"]
15
+ font_fallback = "sans-serif"
16
+ min_font_pt = 8.0
17
+ max_font_pt = 12.0
18
+ panel_label_pt = 10.0
19
+ panel_label_weight = "bold"
20
+ panel_label_case = "upper"
21
+
22
+ [export]
23
+ preferred_formats = ["tiff", "eps", "pdf"]
24
+ min_dpi = 300
25
+ color_space = "RGB"
26
+ font_embedding = true
27
+ editable_text = false
28
+
29
+ [color]
30
+ avoid_combinations = [["red", "green"]]
31
+ colorblind_required = true
32
+ grayscale_required = false
33
+
34
+ [line]
35
+ min_weight_pt = 0.5
@@ -0,0 +1,35 @@
1
+ [metadata]
2
+ name = "Physical Review Letters"
3
+ publisher = "American Physical Society"
4
+ source_url = "https://journals.aps.org/prl/authors"
5
+ last_verified = "2026-04-02"
6
+ verified_by = "plotstyle"
7
+
8
+ [dimensions]
9
+ single_column_mm = 86.0
10
+ double_column_mm = 178.0
11
+ max_height_mm = 234.0
12
+
13
+ [typography]
14
+ font_family = ["Times", "Times New Roman"]
15
+ font_fallback = "serif"
16
+ min_font_pt = 6.0
17
+ max_font_pt = 10.0
18
+ panel_label_pt = 8.0
19
+ panel_label_weight = "normal"
20
+ panel_label_case = "parens_lower"
21
+
22
+ [export]
23
+ preferred_formats = ["pdf", "eps"]
24
+ min_dpi = 600
25
+ color_space = "RGB"
26
+ font_embedding = true
27
+ editable_text = false
28
+
29
+ [color]
30
+ avoid_combinations = [["red", "green"]]
31
+ colorblind_required = true
32
+ grayscale_required = false
33
+
34
+ [line]
35
+ min_weight_pt = 0.5