PlotingZ is a data visualization library written in C++ which is based on SFML. Other libraries used in the project:
Any contribution from your side is highly appreciated so feel free to fork this project and make some pull request. Under the issues tab you can find some taks on which you can start to work on.
- Install Microsoft Visual Studio C++ environment for C++ desktop application development.
- Download Bazel stable version
4.2.1
and follow the installation steps. For convenient easons, rename the downloaded executable frombazel-4.2.1-windows-x86_64.exe
tobazel.exe
. - Open your terminal located at the root of the project and run the following command to build the project
bazel build --config=windows //...
- To run the application, type the following command
bazel run --config=windows //Plot:main_run
- Download Bazel stable version
4.2.1
and follow the installation steps. - In this project, we use
clang
as the main compiler for developent. Execute the following command to install the developement environment:
sudo apt-get install build-essential git clang clang-format clang-tidy
- Open your terminal located at the root of the project and run the following command to build the project
bazel build --config=linux //...
- To run the application, type the following command
bazel run --config=linux //Plot:main_run
After the needed libraries are installed, build the project, set some input data and you should be ready to go! :)
An example can be seen in the Plot/main_run.cpp
file.
Scatter plot sine waves:
Line plot sine waves:
Following features are available:
Common:
- Axis which values scale on input data
- Legend
Plots:
- Scatter
- Line
Common:
- Grid
Plots:
- Histogram
- Rightmost axis value is cut-off due to the value text is exceeding screen dimension
- Currently, does not support negative input data values
- Windows application works only in
Release
mode and theSFML
.dll files must be manually copied to the build folder.
Big thanks to JetBrains for supporting this project with a free open-source CLion license.