Biblioteca de gráficos interactivos, gratuita y de código abierto para .NET, que renderiza gráficos en aplicaciones GUI, consolas, Blazor y notebooks.
epezent/implot
Biblioteca de gráficos en modo inmediato y acelerados por GPU para Dear ImGui, pensada para crear gráficos interactivos en tiempo real en aplicaciones C++.
- Estrellas
- 6,268
- Forks
- 697
- Issues abiertos
- 121
- Último commit
- hace 12 días
¿Qué es?
ImPlot es una biblioteca de gráficos para C++ basada en Dear ImGui que sigue el mismo estilo de modo inmediato: se llaman funciones de trazado en cada fotograma entre BeginPlot y EndPlot, sin tener que gestionar estado de GUI persistente. Está pensada para visualizar datos de aplicaciones en tiempo real y explorarlos de forma interactiva, no para crear figuras listas para publicar o exportar.
La biblioteca admite gráficos de líneas, áreas sombreadas, dispersión, barras, barras de error, tallos, escalonados, circulares, mapas de calor, histogramas e imágenes; además, permite combinar varios de estos tipos en un mismo gráfico. Los ejes admiten escalas lineales y logarítmicas, ejes x con formato de tiempo, varios ejes x e y, subgráficos, zoom, desplazamiento, selección de áreas rectangulares y rangos de consulta. Los encabezados y archivos fuente no tienen dependencias aparte de ImGui y evitan los contenedores de STL en la API pública.
Se pueden pasar datos como float, double o enteros con signo y sin signo de 8 a 64 bits, mediante pasos entre elementos o funciones getter para estructuras personalizadas. Para integrarla, basta con añadir los archivos fuente al proyecto y crear un contexto de ImPlot junto al contexto de ImGui.
Funciones clave
- 01API de modo inmediato que sigue el patrón BeginX/EndX de ImGui
- 02Renderizado acelerado por GPU con numerosos tipos de gráficos, incluidos mapas de calor e histogramas
- 03Escalas lineales y logarítmicas para los ejes, ejes x con formato de tiempo y varios ejes x/y
- 04Zoom, desplazamiento, selección de áreas rectangulares y rangos de consulta persistentes e interactivos
- 05Estilo que sigue el tema actual de ImGui o se puede personalizar por completo
Casos de uso
- Visualizar datos en tiempo real de sensores o telemetría en una herramienta de escritorio escrita en C++
- Crear paneles interactivos de depuración o supervisión sobre Dear ImGui
- Explorar señales o series temporales con zoom y selección de rangos
Inicio rápido
- 1
Configura un entorno de Dear ImGui si aún no tienes uno
- 2
Añade implot.h, implot_internal.h, implot.cpp e implot_items.cpp a tus archivos fuente (o instálalo mediante vcpkg)
- 3
Instala ImPlot con vcpkg
./vcpkg install implot - 4
Crea un ImPlotContext junto con tu ImGuiContext
Antes de usarlo
- No es adecuado para crear gráficos con calidad de publicación ni para exportarlos a archivos de imagen.
- Dear ImGui usa índices de 16 bits de forma predeterminada, por lo que los gráficos densos, como los mapas de calor, requieren un cambio de configuración o compatibilidad del renderizador.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es implot?
- Biblioteca de gráficos en modo inmediato y acelerados por GPU para Dear ImGui, pensada para crear gráficos interactivos en tiempo real en aplicaciones C++. ImPlot es una biblioteca de gráficos para C++ basada en Dear ImGui que sigue el mismo estilo de modo inmediato: se llaman funciones de trazado en cada fotograma entre BeginPlot y EndPlot, sin tener que gestionar estado de GUI persistente. Está pensada para visualizar datos de aplicaciones en tiempo real y explorarlos de forma interactiva, no para crear figuras listas para publicar o exportar.
- ¿implot es gratuito? ¿Qué licencia tiene?
- implot es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿implot sigue mantenido?
- Mantenimiento activo. El último commit de implot fue el 25 oct 2026.
- ¿Para qué puedo usar implot?
- Visualizar datos en tiempo real de sensores o telemetría en una herramienta de escritorio escrita en C++ Crear paneles interactivos de depuración o supervisión sobre Dear ImGui Explorar señales o series temporales con zoom y selección de rangos
- ¿Cómo se instala implot?
- Configura un entorno de Dear ImGui si aún no tienes uno Añade implot.h, implot_internal.h, implot.cpp e implot_items.cpp a tus archivos fuente (o instálalo mediante vcpkg) Instala ImPlot con vcpkg: ./vcpkg install implot Crea un ImPlotContext junto con tu ImGuiContext
- ¿Dónde consigo implot?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/epezent/implot
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Gramática JSON de alto nivel para gráficos interactivos declarativos que compila especificaciones completas de Vega.
Toolkit de GUI para Python basado en Dear ImGui, con renderizado en la GPU y API de gráficos, editor de nodos y dibujo.
Una biblioteca de GUI de modo inmediato para Rust, fácil de usar, que funciona en la web y de forma nativa, y puede integrarse en motores de juegos.
Biblioteca de Python para crear visualizaciones de datos, gráficos y dashboards interactivos que se muestran en navegadores web modernos.
Una biblioteca de dataframes para Java que permite cargar, limpiar, transformar y resumir datos tabulares, con gráficos basados en Plotly.