simvue-io / simvue-io/python-api

Grid.new fails if 1D array provided

Offen
#883 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug wontfix
Vorherrschende Sprache
Python
Sterne
4
Forks
1
Ø Merge
5 T. 8 Std.
Gemergte PRs (30 T.)
4

Beschreibung

Description of Bug

If trying to create a grid for a 2D metric by providing a 1D array of ticks, it fails validation.

Steps To Reproduce

Code to reproduce the behavior:

import simvue
import numpy

with simvue.Run() as run:
    run.init("test")
    run.assign_metric_to_grid(metric_name="test_metric_2d", axes_ticks=numpy.arange(10), axes_labels=['x'])
    for i in range(10):
        run.log_metrics({"test_metric_2d": numpy.random.rand(10)}, time=i, step=i)

Expected behavior

Grid added correctly

Actual Behaviour

Traceback (most recent call last):
  File "/home/wk9874/Documents/simvue/python-api/test_retrieval.py", line 6, in <module>
    run.assign_metric_to_grid(metric_name="test_metric_2d", axes_ticks=numpy.arange(10), axes_labels=['x'])
  File "/home/wk9874/Documents/simvue/python-api/simvue/utilities.py", line 260, in wrapper
    return class_func(self, *args, **kwargs)
  File "/home/wk9874/Documents/simvue/python-api/simvue/run.py", line 105, in _wrapper
    return _function(self, *args, **kwargs)
  File "/home/wk9874/Documents/simvue/python-api/simvue/utilities.py", line 300, in wrapper
    raise RuntimeError(error_str)
RuntimeError: `Grid.new` Validation:
╒═════════╤═════════════╤══════════════════╤══════════════════════════════╕
│   Input │ Location    │ Type             │ Message                      │
╞═════════╪═════════════╪══════════════════╪══════════════════════════════╡
│       0 │ ['grid', 0] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       1 │ ['grid', 1] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       2 │ ['grid', 2] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       3 │ ['grid', 3] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       4 │ ['grid', 4] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       5 │ ['grid', 5] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       6 │ ['grid', 6] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       7 │ ['grid', 7] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       8 │ ['grid', 8] │ int != list_type │ Input should be a valid list │
├─────────┼─────────────┼──────────────────┼──────────────────────────────┤
│       9 │ ['grid', 9] │ int != list_type │ Input should be a valid list │
╘═════════╧═════════════╧══════════════════╧══════════════════════════════╛

Screenshots

If applicable, add screenshots to help explain your problem.

Setup

  • OS: [e.g. Windows 11]
  • Python version [e.g. v3.13.3]

Additional context

Add any other context about the problem here.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem Aufruf assign_metric_to_grid in simvue/run.py und den Validierungs-Wrappern in simvue/utilities.py und reproduziere dann den Fehler anhand des bereitgestellten NumPy-Beispiels. Prüfe, wie Grid.new die Gittereingabe validiert. Als abgeschlossen gilt die Aufgabe, wenn ein 1D-Array axes_ticks mit einem einzelnen Label das Gitter erfolgreich erstellt, ohne den gemeldeten Validierungsfehler.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
numpy, python
Bereich
api
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.