simvue-io / simvue-io/python-api

Creating new grid breaks if axes labels not provided

Abierto
#882 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

bug
Lenguaje dominante
Python
Estrellas
4
Forks
1
Merge medio
5 d 8 h
PR fusionados (30 d)
4

Descripción

Description of Bug

If I use assign_metrics_to_grid to make a new grid, and I don't provide a list of axes labels, it will crash and give a misleading error message:

  File "/home/wk9874/Documents/simvue/python-api/simvue/run.py", line 1434, in assign_metric_to_grid
    self._error(f"Grid '{grid_name}' is not defined.")
  File "/home/wk9874/Documents/simvue/python-api/simvue/run.py", line 606, in _error
    raise SimvueRunError(message)
simvue.exception.SimvueRunError: Grid 'test_metric_2d' is not defined.

I dont think axes labels should be required, it should probably default to 'x' for 2D metrics of ['x', 'y'] for 3D metrics. Although if you would prefer to be explicit and require axes labels, it should provide a more informative message

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(100))
    for i in range(10):
        run.log_metrics({"test_metric_2d": numpy.random.rand(10)}, time=i, step=i)

Expected behavior

Should create a grid and log a metric

Actual Behaviour

Error thrown

Screenshots

If applicable, add screenshots to help explain your problem.

Setup

  • OS: Ubuntu 22.04
  • Python version 3.10

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Inspecciona simvue/run.py alrededor de assign_metric_to_grid en la línea 1434 y, después, ejecuta la reproducción usando numpy y etiquetas de ejes ausentes. Confirma si el comportamiento previsto es crear el grid con valores predeterminados o informar de un error de validación más claro, y verifica que el comportamiento resultante coincida con el grid esperado y el flujo de registro de métricas.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
numpy, python
Área
api, data
Tipo de issue
Error
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.