Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rekola/cppvis
C++ Data Visualization Platform
https://github.com/rekola/cppvis
c-plus-plus c-plusplus data-visualization
Last synced: about 2 hours ago
JSON representation
C++ Data Visualization Platform
- Host: GitHub
- URL: https://github.com/rekola/cppvis
- Owner: rekola
- License: mit
- Created: 2024-02-09T00:21:55.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-04-02T21:42:07.000Z (7 months ago)
- Last Synced: 2024-04-03T20:54:55.804Z (7 months ago)
- Topics: c-plus-plus, c-plusplus, data-visualization
- Language: C++
- Homepage:
- Size: 15.6 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# cppvis
[![GitHub License](https://img.shields.io/github/license/rekola/cppvis?logo=github&logoColor=lightgrey&color=yellow)](https://github.com/rekola/cppvis/blob/main/LICENSE)
[![CI](https://github.com/rekola/cppvis/workflows/Ubuntu-CI/badge.svg)]()
[![VS17-CI](https://github.com/rekola/cppvis/workflows/VS17-CI/badge.svg)]()
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)## C++ Data Visualization Platform
Work in progress!
## Features
- Pretty printing of C++ data structures in terminal with True Color
## Plans
- Image rendering (inline and block)
- Different notations for pretty printing (e.g. JSON, EDN)
- Different renderers (Terminal+Kitty/Sixel, PDF, Qt)
- Plotting and sparklines
- Interactivity
- Graph visualization
- Dataframes and SQL## Example Code
Most features are still unimplemented.
```c++
// pr prints EDN by defaultstd::map M;
M.insert_or_assign("key1", 'a');
M.insert_or_assign("key2", 'b');
cppvis::prn(M);
//=> { "key1" \a, "key2" \b }// Matlab style plot (not implemented)
cppvis::plot(std::vector{ 1.0, 2.0, 3.0 }, std::vector{ 1.0, 2.0, 3.0 });
// Loading images (not implemented)
auto img = cppvis::slurp("https://picsum.photos/500");
vis.prn(img);```