jarvisplot 1.3.0__tar.gz → 1.3.1__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 (52) hide show
  1. {jarvisplot-1.3.0 → jarvisplot-1.3.1/JarvisPLOT.egg-info}/PKG-INFO +42 -11
  2. {jarvisplot-1.3.0/jarvisplot.egg-info → jarvisplot-1.3.1/JarvisPLOT.egg-info}/SOURCES.txt +6 -6
  3. {jarvisplot-1.3.0/jarvisplot.egg-info → jarvisplot-1.3.1}/PKG-INFO +42 -11
  4. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/README.md +39 -8
  5. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/load_data.py +3 -3
  6. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/preprocessor.py +16 -2
  7. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cli.py +6 -2
  8. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/pyproject.toml +3 -3
  9. {jarvisplot-1.3.0/jarvisplot.egg-info → jarvisplot-1.3.1/JarvisPLOT.egg-info}/dependency_links.txt +0 -0
  10. {jarvisplot-1.3.0/jarvisplot.egg-info → jarvisplot-1.3.1/JarvisPLOT.egg-info}/entry_points.txt +0 -0
  11. {jarvisplot-1.3.0/jarvisplot.egg-info → jarvisplot-1.3.1/JarvisPLOT.egg-info}/requires.txt +0 -0
  12. {jarvisplot-1.3.0/jarvisplot.egg-info → jarvisplot-1.3.1/JarvisPLOT.egg-info}/top_level.txt +0 -0
  13. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/__init__.py +0 -0
  14. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/adapters.py +0 -0
  15. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/cards/std_axes_adapter_config.json +0 -0
  16. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/data_pipelines.py +0 -0
  17. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/figure.py +0 -0
  18. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/helper.py +0 -0
  19. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/Figure/method_registry.py +0 -0
  20. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/__init__.py +0 -0
  21. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cache_store.py +0 -0
  22. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/1x1/ternary.json +0 -0
  23. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/2x1/rect.json +0 -0
  24. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/2x1/rect5x1.json +0 -0
  25. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/2x1/rect_cmap.json +0 -0
  26. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/2x1/ternary.json +0 -0
  27. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/2x1/ternary_cmap.json +0 -0
  28. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/4x1/rect.json +0 -0
  29. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/4x1/rect_cmap.json +0 -0
  30. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/4x1/ternary.json +0 -0
  31. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/a4paper/4x1/ternary_cmap.json +0 -0
  32. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/args.json +0 -0
  33. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/colors/colormaps.json +0 -0
  34. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/default/output.json +0 -0
  35. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/gambit/1x1/ternary.json +0 -0
  36. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/gambit/2x1/rect_cmap.json +0 -0
  37. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/gambit/2x1/ternary.json +0 -0
  38. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/gambit/2x1/ternary_cmap.json +0 -0
  39. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/icons/JarvisHEP.png +0 -0
  40. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/icons/gambit.png +0 -0
  41. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/icons/gambit_small.png +0 -0
  42. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/cards/style_preference.json +0 -0
  43. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/client.py +0 -0
  44. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/config.py +0 -0
  45. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/core.py +0 -0
  46. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/data_loader.py +0 -0
  47. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/inner_func.py +0 -0
  48. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/memtrace.py +0 -0
  49. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/utils/__init__.py +0 -0
  50. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/utils/cmaps.py +0 -0
  51. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/jarvisplot/utils/interpolator.py +0 -0
  52. {jarvisplot-1.3.0 → jarvisplot-1.3.1}/setup.cfg +0 -0
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
- Name: jarvisplot
3
- Version: 1.3.0
4
- Summary: JarvisPLOT: YAML-driven plotting engine
2
+ Name: JarvisPLOT
3
+ Version: 1.3.1
4
+ Summary: Jarvis-PLOT: YAML-driven plotting engine
5
5
  Requires-Python: >=3.10
6
6
  Description-Content-Type: text/markdown
7
7
  Requires-Dist: loguru
@@ -18,19 +18,37 @@ Requires-Dist: scipy
18
18
  Requires-Dist: shapely
19
19
  Requires-Dist: deepmerge
20
20
 
21
- # JarvisPLOT
21
+ # Jarvis-PLOT
22
22
 
23
- JarvisPLOT is a lightweight, Python/Matplotlib-based plotting framework developed for **Jarvis-HEP**,
23
+ Jarvis-PLOT is a lightweight, Python/Matplotlib-based plotting framework developed for **Jarvis-HEP**,
24
24
  but it can also be used as a **standalone scientific plotting tool**.
25
25
 
26
26
  It provides a simple command-line interface (CLI) to generate publication-quality figures from YAML configuration files, with most layout and style decisions handled by predefined profiles and style cards.
27
27
 
28
28
  ---
29
29
 
30
- ## Installation
30
+ ## Installation
31
31
 
32
- ```bash
33
- pip install jarvisplot
32
+ ```bash
33
+ pip install Jarvis-PLOT
34
+ ```
35
+
36
+ The PyPI distribution name is now `Jarvis-PLOT`.
37
+ The Python import package and entrypoint remain unchanged:
38
+
39
+ ```python
40
+ import jarvisplot
41
+ ```
42
+
43
+ ```bash
44
+ jplot path/to/config.yaml
45
+ ```
46
+
47
+ If you have an older environment that still uses the historical package name, replace:
48
+
49
+ ```bash
50
+ pip uninstall jarvisplot
51
+ pip install Jarvis-PLOT
34
52
  ```
35
53
 
36
54
  ## Command-Line Usage
@@ -41,7 +59,7 @@ Display help information:
41
59
  jplot -h
42
60
  ```
43
61
 
44
- Run JarvisPLOT with one or more YAML configuration files:
62
+ Run Jarvis-PLOT with one or more YAML configuration files:
45
63
 
46
64
  ```bash
47
65
  jplot path/to/config.yaml
@@ -56,7 +74,7 @@ jplot path/to/config.yaml --rebuild-cache
56
74
  ### Project Workdir and Cache
57
75
 
58
76
  - You can set `project.workdir` in YAML.
59
- - If `output.dir` is omitted, JarvisPLOT now defaults to `<workdir>/plots/`.
77
+ - If `output.dir` is omitted, Jarvis-PLOT defaults to `<workdir>/plots/`.
60
78
  - Data cache is stored in `<workdir>/.cache/`.
61
79
  - Profiling pipelines are prebuilt once and reused from cache when source fingerprint and profile settings are unchanged.
62
80
  - Profiling uses a fast two-stage grid reduction (`pregrid` + render `bin`) for large datasets.
@@ -76,7 +94,7 @@ jplot ./bin/SUSYRun2_GEWMSSM.yaml
76
94
 
77
95
  - Figures are saved automatically to the output paths defined in the YAML configuration.
78
96
  - Common output formats include PNG and PDF (backend-dependent).
79
- - JarvisPLOT works in headless environments (SSH, batch jobs) without any GUI backend.
97
+ - Jarvis-PLOT works in headless environments (SSH, batch jobs) without any GUI backend.
80
98
 
81
99
  ---
82
100
 
@@ -103,6 +121,19 @@ jplot ./bin/SUSYRun2_GEWMSSM.yaml
103
121
  ### Documentation
104
122
  [https://pengxuan-zhu-phys.github.io/Jarvis-Docs/](https://pengxuan-zhu-phys.github.io/Jarvis-Docs/)
105
123
 
124
+ ### Developer Docs
125
+
126
+ Tracked architecture and maintenance docs now live in `docs/dev/`.
127
+
128
+ - `docs/dev/ARCHITECTURE_OVERVIEW.md`
129
+ - `docs/dev/DATAFLOW_ARCHITECTURE.md`
130
+ - `docs/dev/MEMORY_OPTIMIZATION_GUIDE.md`
131
+ - `docs/dev/DEVELOPER_RULES.md`
132
+ - `docs/dev/MEMTRACE_SYSTEM.md`
133
+ - `docs/dev/CONTRIBUTION_GUIDE.md`
134
+
135
+ These documents describe the 1.3.0 selection-table pipeline architecture that 1.3.1 consolidates. Future work should preserve the narrow-table dataflow and must not reintroduce wide-table profiling or cache payloads.
136
+
106
137
  ---
107
138
 
108
139
  ## License
@@ -1,5 +1,11 @@
1
1
  README.md
2
2
  pyproject.toml
3
+ JarvisPLOT.egg-info/PKG-INFO
4
+ JarvisPLOT.egg-info/SOURCES.txt
5
+ JarvisPLOT.egg-info/dependency_links.txt
6
+ JarvisPLOT.egg-info/entry_points.txt
7
+ JarvisPLOT.egg-info/requires.txt
8
+ JarvisPLOT.egg-info/top_level.txt
3
9
  jarvisplot/__init__.py
4
10
  jarvisplot/cache_store.py
5
11
  jarvisplot/cli.py
@@ -9,12 +15,6 @@ jarvisplot/core.py
9
15
  jarvisplot/data_loader.py
10
16
  jarvisplot/inner_func.py
11
17
  jarvisplot/memtrace.py
12
- jarvisplot.egg-info/PKG-INFO
13
- jarvisplot.egg-info/SOURCES.txt
14
- jarvisplot.egg-info/dependency_links.txt
15
- jarvisplot.egg-info/entry_points.txt
16
- jarvisplot.egg-info/requires.txt
17
- jarvisplot.egg-info/top_level.txt
18
18
  jarvisplot/Figure/__init__.py
19
19
  jarvisplot/Figure/adapters.py
20
20
  jarvisplot/Figure/data_pipelines.py
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
- Name: jarvisplot
3
- Version: 1.3.0
4
- Summary: JarvisPLOT: YAML-driven plotting engine
2
+ Name: JarvisPLOT
3
+ Version: 1.3.1
4
+ Summary: Jarvis-PLOT: YAML-driven plotting engine
5
5
  Requires-Python: >=3.10
6
6
  Description-Content-Type: text/markdown
7
7
  Requires-Dist: loguru
@@ -18,19 +18,37 @@ Requires-Dist: scipy
18
18
  Requires-Dist: shapely
19
19
  Requires-Dist: deepmerge
20
20
 
21
- # JarvisPLOT
21
+ # Jarvis-PLOT
22
22
 
23
- JarvisPLOT is a lightweight, Python/Matplotlib-based plotting framework developed for **Jarvis-HEP**,
23
+ Jarvis-PLOT is a lightweight, Python/Matplotlib-based plotting framework developed for **Jarvis-HEP**,
24
24
  but it can also be used as a **standalone scientific plotting tool**.
25
25
 
26
26
  It provides a simple command-line interface (CLI) to generate publication-quality figures from YAML configuration files, with most layout and style decisions handled by predefined profiles and style cards.
27
27
 
28
28
  ---
29
29
 
30
- ## Installation
30
+ ## Installation
31
31
 
32
- ```bash
33
- pip install jarvisplot
32
+ ```bash
33
+ pip install Jarvis-PLOT
34
+ ```
35
+
36
+ The PyPI distribution name is now `Jarvis-PLOT`.
37
+ The Python import package and entrypoint remain unchanged:
38
+
39
+ ```python
40
+ import jarvisplot
41
+ ```
42
+
43
+ ```bash
44
+ jplot path/to/config.yaml
45
+ ```
46
+
47
+ If you have an older environment that still uses the historical package name, replace:
48
+
49
+ ```bash
50
+ pip uninstall jarvisplot
51
+ pip install Jarvis-PLOT
34
52
  ```
35
53
 
36
54
  ## Command-Line Usage
@@ -41,7 +59,7 @@ Display help information:
41
59
  jplot -h
42
60
  ```
43
61
 
44
- Run JarvisPLOT with one or more YAML configuration files:
62
+ Run Jarvis-PLOT with one or more YAML configuration files:
45
63
 
46
64
  ```bash
47
65
  jplot path/to/config.yaml
@@ -56,7 +74,7 @@ jplot path/to/config.yaml --rebuild-cache
56
74
  ### Project Workdir and Cache
57
75
 
58
76
  - You can set `project.workdir` in YAML.
59
- - If `output.dir` is omitted, JarvisPLOT now defaults to `<workdir>/plots/`.
77
+ - If `output.dir` is omitted, Jarvis-PLOT defaults to `<workdir>/plots/`.
60
78
  - Data cache is stored in `<workdir>/.cache/`.
61
79
  - Profiling pipelines are prebuilt once and reused from cache when source fingerprint and profile settings are unchanged.
62
80
  - Profiling uses a fast two-stage grid reduction (`pregrid` + render `bin`) for large datasets.
@@ -76,7 +94,7 @@ jplot ./bin/SUSYRun2_GEWMSSM.yaml
76
94
 
77
95
  - Figures are saved automatically to the output paths defined in the YAML configuration.
78
96
  - Common output formats include PNG and PDF (backend-dependent).
79
- - JarvisPLOT works in headless environments (SSH, batch jobs) without any GUI backend.
97
+ - Jarvis-PLOT works in headless environments (SSH, batch jobs) without any GUI backend.
80
98
 
81
99
  ---
82
100
 
@@ -103,6 +121,19 @@ jplot ./bin/SUSYRun2_GEWMSSM.yaml
103
121
  ### Documentation
104
122
  [https://pengxuan-zhu-phys.github.io/Jarvis-Docs/](https://pengxuan-zhu-phys.github.io/Jarvis-Docs/)
105
123
 
124
+ ### Developer Docs
125
+
126
+ Tracked architecture and maintenance docs now live in `docs/dev/`.
127
+
128
+ - `docs/dev/ARCHITECTURE_OVERVIEW.md`
129
+ - `docs/dev/DATAFLOW_ARCHITECTURE.md`
130
+ - `docs/dev/MEMORY_OPTIMIZATION_GUIDE.md`
131
+ - `docs/dev/DEVELOPER_RULES.md`
132
+ - `docs/dev/MEMTRACE_SYSTEM.md`
133
+ - `docs/dev/CONTRIBUTION_GUIDE.md`
134
+
135
+ These documents describe the 1.3.0 selection-table pipeline architecture that 1.3.1 consolidates. Future work should preserve the narrow-table dataflow and must not reintroduce wide-table profiling or cache payloads.
136
+
106
137
  ---
107
138
 
108
139
  ## License
@@ -1,16 +1,34 @@
1
- # JarvisPLOT
1
+ # Jarvis-PLOT
2
2
 
3
- JarvisPLOT is a lightweight, Python/Matplotlib-based plotting framework developed for **Jarvis-HEP**,
3
+ Jarvis-PLOT is a lightweight, Python/Matplotlib-based plotting framework developed for **Jarvis-HEP**,
4
4
  but it can also be used as a **standalone scientific plotting tool**.
5
5
 
6
6
  It provides a simple command-line interface (CLI) to generate publication-quality figures from YAML configuration files, with most layout and style decisions handled by predefined profiles and style cards.
7
7
 
8
8
  ---
9
9
 
10
- ## Installation
10
+ ## Installation
11
11
 
12
- ```bash
13
- pip install jarvisplot
12
+ ```bash
13
+ pip install Jarvis-PLOT
14
+ ```
15
+
16
+ The PyPI distribution name is now `Jarvis-PLOT`.
17
+ The Python import package and entrypoint remain unchanged:
18
+
19
+ ```python
20
+ import jarvisplot
21
+ ```
22
+
23
+ ```bash
24
+ jplot path/to/config.yaml
25
+ ```
26
+
27
+ If you have an older environment that still uses the historical package name, replace:
28
+
29
+ ```bash
30
+ pip uninstall jarvisplot
31
+ pip install Jarvis-PLOT
14
32
  ```
15
33
 
16
34
  ## Command-Line Usage
@@ -21,7 +39,7 @@ Display help information:
21
39
  jplot -h
22
40
  ```
23
41
 
24
- Run JarvisPLOT with one or more YAML configuration files:
42
+ Run Jarvis-PLOT with one or more YAML configuration files:
25
43
 
26
44
  ```bash
27
45
  jplot path/to/config.yaml
@@ -36,7 +54,7 @@ jplot path/to/config.yaml --rebuild-cache
36
54
  ### Project Workdir and Cache
37
55
 
38
56
  - You can set `project.workdir` in YAML.
39
- - If `output.dir` is omitted, JarvisPLOT now defaults to `<workdir>/plots/`.
57
+ - If `output.dir` is omitted, Jarvis-PLOT defaults to `<workdir>/plots/`.
40
58
  - Data cache is stored in `<workdir>/.cache/`.
41
59
  - Profiling pipelines are prebuilt once and reused from cache when source fingerprint and profile settings are unchanged.
42
60
  - Profiling uses a fast two-stage grid reduction (`pregrid` + render `bin`) for large datasets.
@@ -56,7 +74,7 @@ jplot ./bin/SUSYRun2_GEWMSSM.yaml
56
74
 
57
75
  - Figures are saved automatically to the output paths defined in the YAML configuration.
58
76
  - Common output formats include PNG and PDF (backend-dependent).
59
- - JarvisPLOT works in headless environments (SSH, batch jobs) without any GUI backend.
77
+ - Jarvis-PLOT works in headless environments (SSH, batch jobs) without any GUI backend.
60
78
 
61
79
  ---
62
80
 
@@ -83,6 +101,19 @@ jplot ./bin/SUSYRun2_GEWMSSM.yaml
83
101
  ### Documentation
84
102
  [https://pengxuan-zhu-phys.github.io/Jarvis-Docs/](https://pengxuan-zhu-phys.github.io/Jarvis-Docs/)
85
103
 
104
+ ### Developer Docs
105
+
106
+ Tracked architecture and maintenance docs now live in `docs/dev/`.
107
+
108
+ - `docs/dev/ARCHITECTURE_OVERVIEW.md`
109
+ - `docs/dev/DATAFLOW_ARCHITECTURE.md`
110
+ - `docs/dev/MEMORY_OPTIMIZATION_GUIDE.md`
111
+ - `docs/dev/DEVELOPER_RULES.md`
112
+ - `docs/dev/MEMTRACE_SYSTEM.md`
113
+ - `docs/dev/CONTRIBUTION_GUIDE.md`
114
+
115
+ These documents describe the 1.3.0 selection-table pipeline architecture that 1.3.1 consolidates. Future work should preserve the narrow-table dataflow and must not reintroduce wide-table profiling or cache payloads.
116
+
86
117
  ---
87
118
 
88
119
  ## License
@@ -436,8 +436,6 @@ def profiling(df, prof, logger):
436
436
  source_z = z[source_rows]
437
437
  grid_x_keep = x_grid[keep_grid]
438
438
  grid_y_keep = y_grid[keep_grid]
439
- grid_z_keep = z_grid[keep_grid]
440
-
441
439
  xx = None
442
440
  yy = None
443
441
  zz = None
@@ -455,7 +453,9 @@ def profiling(df, prof, logger):
455
453
  grid_out = pd.DataFrame(index=keep_grid + source_count)
456
454
  grid_out[xind] = grid_x_keep
457
455
  grid_out[yind] = grid_y_keep
458
- grid_out[zind] = grid_z_keep
456
+ # Keep the internal sentinel for Bridson selection only; emitted grid
457
+ # support points should remain visually empty in downstream consumers.
458
+ grid_out[zind] = np.nan
459
459
  grid_out = grid_out.reindex(columns=out.columns)
460
460
  out = pd.concat([out, grid_out], axis=0, ignore_index=False)
461
461
 
@@ -320,15 +320,29 @@ class DataPreprocessor:
320
320
  if dataset is None or not hasattr(dataset, "fetch_rows_columns"):
321
321
  return df
322
322
  try:
323
- row_ids = np.asarray(df[JP_ROW_IDX].to_numpy(copy=False), dtype=np.int64)
323
+ row_idx = pd.to_numeric(df[JP_ROW_IDX], errors="coerce")
324
+ except Exception:
325
+ return df
326
+ valid_mask = row_idx.notna().to_numpy(copy=False)
327
+ if not bool(np.any(valid_mask)):
328
+ return df
329
+ try:
330
+ row_ids = row_idx[valid_mask].astype(np.int64).to_numpy(copy=False)
324
331
  except Exception:
325
332
  return df
326
333
  extra = dataset.fetch_rows_columns(row_ids, missing, row_key=JP_ROW_IDX)
327
334
  if not isinstance(extra, pd.DataFrame) or extra.empty:
328
335
  return df
329
336
  out = self._clone_df(df)
337
+ valid_index = out.index[valid_mask]
330
338
  for col in [c for c in extra.columns if c in missing]:
331
- out[col] = extra[col].to_numpy(copy=False)
339
+ values = extra[col].to_numpy(copy=False)
340
+ if int(values.shape[0]) != int(valid_index.shape[0]):
341
+ continue
342
+ if bool(np.all(valid_mask)):
343
+ out[col] = values
344
+ else:
345
+ out.loc[valid_index, col] = values
332
346
  return out
333
347
 
334
348
  @staticmethod
@@ -7,7 +7,12 @@ import os, sys
7
7
  # --- version import fallback ---
8
8
  try:
9
9
  from importlib.metadata import version as _pkg_version
10
- JPLOT_VERSION = _pkg_version("jarvisplot")
10
+ for _dist_name in ("Jarvis-PLOT", "jarvisplot"):
11
+ try:
12
+ JPLOT_VERSION = _pkg_version(_dist_name)
13
+ break
14
+ except Exception:
15
+ JPLOT_VERSION = "0.0.0"
11
16
  except Exception:
12
17
  JPLOT_VERSION = "0.0.0"
13
18
 
@@ -62,4 +67,3 @@ class CLI():
62
67
  self.args.add_argument(
63
68
  opt['long'], **kwargs
64
69
  )
65
-
@@ -3,9 +3,9 @@ requires = ["setuptools>=68", "wheel"]
3
3
  build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
- name = "jarvisplot"
7
- version = "1.3.0"
8
- description = "JarvisPLOT: YAML-driven plotting engine"
6
+ name = "JarvisPLOT"
7
+ version = "1.3.1"
8
+ description = "Jarvis-PLOT: YAML-driven plotting engine"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
11
11
  dependencies = [
File without changes