五分钟学会C++高效图表绘制神器调用

您所在的位置:网站首页 matplotlibcpp画点 五分钟学会C++高效图表绘制神器调用

五分钟学会C++高效图表绘制神器调用

2023-12-02 04:08| 来源: 网络整理| 查看: 265

引言

给大家介绍一个C++上简单高效的图表绘制与数据可视化的神器 matplotlib-cpp。先交代我的系统配置跟软件版本信息

- Windows 10 64位 - VS2015 - Python3.6.5 - OpenCV4.2

安装与配置Matplotlib-cpp

通过C++调用python的matplotlib工具包实现各种数据图表显示,是最简单的C++图表库。支持Windows跟Linux系统下使用。

下载

git clone https://github.com/lava/matplotlib-cpp.git

目录结构如下:

在contrib文件夹下面打开WinBuild.cmd,运行这个脚本即可完成编译,但是在运行之前先打开修改4~8行的默认参数,符合自己的软件版本与信息,我的修改如下:

REM ------Set Your Environment------------------------------- if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14 if NOT DEFINED CMAKE_CONFIG set CMAKE_CONFIG=Release if NOT DEFINED PYTHONHOME set PYTHONHOME=C:/Users/Administrator/AppData/Local/Programs/Python/Python36 REM ---------------------------------------------------------

然后在windows 命令行窗口运行如下:

完成编译之后就好啦,现在需要完成VS2015的配置,主要分为三步:

- 配置包含路径

- 配置库目录

- 配置链接器

注意:

还有最重要的一点,把对应的python的home目录设置到环境变量中去!

使用matplotlib-cpp

- 测试matplotlib-cpp

创建一个测试cpp文件,添加如下代码:

#include "matplotlibcpp.h" namespace plt = matplotlibcpp; int main() { plt::plot({1,3,2,4}); plt::show(); }

运行结果如下:

OpenCV + matplotlib-cpp联合使用

显示图像

通过 plt::imshow 支持黑白跟彩色图像显示,显示一张图像的代码如下:

Mat src = imread("D:/images/test1.png"); cvtColor(src, src, COLOR_BGR2RGB); const uchar* buff = src.ptr(0); int h = src.rows; int w = src.cols; int channels = src.channels(); plt::title("My Demo"); plt::imshow(buff, h, w, channels); plt::show();

图像转为HSV色彩空间,对H通道显示对应的直方图曲线

直方图Bar

从数据绘制各种图表

// Prepare data. int n = 5000; // number of data points vector x(n), y(n); for (int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3