Libs & Technology para ayudarme a construir un gráfico de Mareys

Necesito un componente para mostrar e interactuar con un gráfico de Marey.

Para aquellos que no están familiarizados, un gráfico de Merey es un gráfico para visualizar los movimientos de los trenes en un eje de tiempo x ubicación. Muy parecido a esta imagen:

ingrese la descripción de la imagen aquí

Miré hacia arriba y hacia abajo, pero no pude encontrar nada fuera de la caja que me ayudara (aquí se agradecen mucho las sugerencias). Así que estoy considerando construir mi propio componente.

Mis componentes deben ser:

  • Alto rendimiento: mostrará datos en tiempo real junto con las interacciones del usuario
  • Altamente interactivo: el usuario puede hacer clic alrededor de las líneas, modificarlas arrastrándolas, hacer zoom, desplazarse, eliminar, agregar, etc.

Ahora mismo me inclino más por una solución web, usando HTML5 Canvas por cuestiones de rendimiento, pero no tengo mucha experiencia en dibujar gráficos en aplicaciones de escritorio (usando JavaFX o C# Canvas) para saber si son las mejores opciones. Entonces haciendo las preguntas:

  • ¿Conoces algún lib/componente que me ayude a desarrollar esto? (JS, Java o C#)
  • ¿Ve/ha tenido algún problema de rendimiento al desarrollar una solución web en este escenario similar?
  • ¿Crees que HTML5 Canvas sobre SVG (D3, por ejemplo) es un buen enfoque?

Cualquier recomendación o comentario al respecto se los agradezco. ¡Gracias!

Respuestas (1)

Essential Chart for WPF es una opción a tener en cuenta para las aplicaciones de escritorio. Verificaré las opciones relacionadas con la web y publicaré una respuesta por separado si las tenemos.

Gráfico Marey de Syncfusion

Ejemplo de código fuente

Debe descargar las DLL de Syncfusion de su sitio web o de Nuget para poder ejecutar la muestra. Las siguientes características se han utilizado para lograr los requisitos:

  1. DateTimeAxis para el eje vertical
  2. FastLineSeries para un buen rendimiento
  3. EnableScrollbar for axis permite desplazarse y hacer zoom
  4. Etiquetas del eje superior que utilizan varios ejes para el gráfico y la configuración de CustomLabels
  5. Etiqueta de cruz para el eje superior usando un convertidor de etiquetas
  6. SfDateTimRangeNavigator para mostrar datos completos debajo del gráfico

Todo el producto está disponible de forma gratuita a través de la licencia comunitaria si califica (menos de 1 millón de dólares en ingresos).

Nota: Trabajo para Syncfusion.