G3p
Modern C++ interface library for Gnuplot with Jupyter support
Install / Use
/learn @arminms/G3pREADME
G3P (GnuPlot Plus Plus) is a tiny but mighty header-only Modern C++ interface library for gnuplot. It is the most natural and intuitive way of adding gnuplot support to any C++ program.
A unique feature of G3P is the ability to embed plots/animations in Jupyter C++ Notebooks with Xeus-Cling kernel for rapid prototyping. If you have Docker, an easy way to learn about this feature is to run the prebuilt container:
docker run -p 8888:8888 -it --rm asobhani/g3p
Then click on the provided URL to connect to the Jupyter Server in the container and open 01_the_basics.ipynb notebook.
If you don't have Docker, an easier but much slower way is to click on badge to launch it on Binder.
Key features include:
- 🖥️ Multiplatform (Linux/macOS/Windows)
- 💥 No dependencies (except gnuplot)
- 🖇️ Header-only (only one header file)
- 🪶 Lightweight (~300 lines of code)
- ⚡ Fast (all i/o implemented with
CAPI andC++11threading) - 📊 Support embedding plots/animations in Jupyter
C++Notebooks backed by Xeus-Cling kernel - 🏫 Easy to learn. If you know gnuplot, you're already set.
- 📥 Easily integrates with existing libraries and code (via CMake configs)
- ➡️ Support fluent interface
- 🔀 Support both C (
%d,%f, ...) and C++ (<<) conventions for passing arguments to gnuplot - 🧪 Include Catch2 unit tests
- 📖 Well documented
Quick example
#include <g3p/gnuplot>
g3p::gnuplot gp;
gp << "set samples" << 200 << "\n"
<< "set style data points\n"
<< "plot [-10:10] sin(x),atan(x),cos(atan(x))\n"
<p align="center"><img src="docs/images/xeus-cling.png"></p>
Please refer to the interactive documentation for more information: 👉
👈
Related Skills
feishu-drive
338.0k|
things-mac
338.0kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
338.0kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
yu-ai-agent
1.9k编程导航 2025 年 AI 开发实战新项目,基于 Spring Boot 3 + Java 21 + Spring AI 构建 AI 恋爱大师应用和 ReAct 模式自主规划智能体YuManus,覆盖 AI 大模型接入、Spring AI 核心特性、Prompt 工程和优化、RAG 检索增强、向量数据库、Tool Calling 工具调用、MCP 模型上下文协议、AI Agent 开发(Manas Java 实现)、Cursor AI 工具等核心知识。用一套教程将程序员必知必会的 AI 技术一网打尽,帮你成为 AI 时代企业的香饽饽,给你的简历和求职大幅增加竞争力。
