| examples | ||
| img | ||
| libs_hash | ||
| src | ||
| tests | ||
| tools | ||
| .gitignore | ||
| .gitmodules | ||
| imgui.ini | ||
| implot.nimble | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
- Nim ImPlot binding
- Nimble install
- Runing demo programs
- Compiling application
- Notice: Compilation options
- Generating ImPlot bindings for development
- Development
- My tools info
- Example gallery written in Nim language
- Other ImGui / CImGui project
- SDL game tutorial Platfromer
Nim ImPlot binding
ImPlot is an immediate mode, GPU accelerated plotting library for Dear ImGui.
This project uses the modified generator that derived from the achievement of Nimgl/imgui.
Prerequisites
-
Windows11 or later
MSys2/MinGW basic commands (make, rm, cp, strip ...)pacman -S make mingw-w64-ucrt-x86_64-{gcc,glfw} -
Linux Debian13 Trixie (and Ubuntu families)
sudo apt install make git gcc g++ sudo apt install lib{opengl-dev,gl1-mesa-dev,glfw3-dev,xcursor-dev,xinerama-dev,xi-dev}-
Install nim (If you'd like to install Nim compiler)
curl https://nim-lang.org/choosenim/init.sh -sSf | shYou must now ensure that the Nimble bin dir is in your PATH.
Place the following line in the ~/.profile or ~/.bashrc file.
export PATH=/home/username/.nimble/bin:$PATH
-
Nimble install
nimble uninstall implot # Remove old version if exists
nimble install implot
Running demo programs
git clone https://github.com/dinau/nim_implot
cd nim_implot
nimble test
Test source: examples/demo
Compiling application
It has to be used cpp backend at compilation for example,
pwd
nim_implot
cd examples/demo
nim cpp -r ImPlotDemo.nim
Note: C backend is not supported.
Notice: Compilation options
If demo programs crash, please try to specify compilation option
--mm:refc instead of --mm:arc or --mm:orc,
especially if you use Nim-2.00, try to specify --mm:refc.
These are TODO at this moment.
Generating ImPlot bindings for development
pwd
nim_implot
nimble gen
Genarated file: src/implot.nim
My tools info
- Windows11
- Nim Compiler Version 2.2.4
- gcc.exe 15.2.0
- Debian 13
- Nim Compiler Version 2.2.4
- gcc 14.2.0
Example gallery written in Nim language
Now all demo (over 50) programs have been implemented in Nim language (2023/10),
(Orignal demo program is here implot_demo.cpp, (C++))
below images are part of them.
Plots
LinePlots.nim
FilledLinePlots.nim
ShadedPlots.nim
ScatterPlots.nim
RealTimePlots.nim
StairstepPlots.nim
BarGroups.nim
BarPlots.nim
BarStacks.nim
ErrorBars.nim
StemPlots.nim
InfiniteLines.nim
PieCharts.nim
HeatMaps.nim
Histogram.nim
DigitalPlots.nim
Images.nim
MarkersAndText.nim
NaNValues.nim
Subplots
Tables.nim
ItemSharing.nim
Axes
LogScale.nim
MultipleAxes.nim
Tools
OffsetAndStride.nim
DragRects.nim
DragAndDrop.nim
Custom
CustomDataAndGetters.nim
Other ImGui / CImGui project
| Language | Project | |
|---|---|---|
| Lua | Script | LuaJITImGui |
| NeLua | Compiler | NeLuaImGui, NeLuaImGui2 |
| Nim | Compiler | ImGuin, Nimgl_test, Nim_implot |
| Python | Script | DearPyGui for 32bit WindowsOS Binary |
| Ruby | Script | igRuby_Examples |
| Zig, C lang. | Compiler | Dear_Bindings_Build |
| Zig | Compiler | ImGuinZ |
SDL game tutorial Platfromer
| Language | SDL | Project | |
|---|---|---|---|
| LuaJIT | Script | SDL2 | LuaJIT-Platformer |
| Nelua | Compiler | SDL2 | NeLua-Platformer |
| Nim | Compiler | SDL3 / SDL2 | Nim-Platformer-sdl2/ Nim-Platformer-sdl3 |
| Ruby | Script | SDL3 | Ruby-Platformer |
| Zig | Compiler | SDL3 / SDL2 | Zig-Platformer |



























