hello,大家好!我是coding老马,大海捞针,从未失手! 今天诸事顺利,记录一下vs2017调用matplotlib可视化绘图神器出现的问题。过程完整,希望可以给需要的小伙伴一些帮助。
科目:vs2017 调用matplotlib-cpp可视化绘图
内容:matplotlib-cpp编译 + vs2017配置,完成调用
目的:通过本次讲解,使兄弟们完成vs2017+matplotlib的工程应用配置,实现在C++环境中调用python绘图神器matplotlib,实现可视化绘图。
时间:15分钟
方法:理论讲解,图片截图,(录播视频正在考虑中)
要求:
1.认真阅读理论讲解
2.参照讲解步骤,加强实践操作
3.理论+实践,注意总结分享,C++这波调用,可视化绘图,真香!
以上要求,希望同学们可以做到!
主要参考文章:1. 五分钟学会C++高效图表绘制神器调用 - 云+社区 - 腾讯云 (tencent.com)
2. c++调用matplotlib(一) - 芒果的博客 - 芒果的个人博客 (mangoroom.cn)
3. it could not find or load the Qt platform plugin
如果顺利的话,看完第一个就可以打完收工了。有问题的话,可以继续看下去。
在我尝试的过程中,出现了五个问题,最终解决了五个问题。步骤及解决问题的方法如下:
1. 下载文件,地址:vs2017-matplotlib-cpp: vs2017 调用matplotlib-cpp实现C++中可视化绘图 (gitee.com)
目录结构如下:
在contrib文件夹中打开WinBuild.cmd文件,修改4-8行的内容符合你的计算机环境,我的修改信息如下:
//修改为自己的计算机环境
REM ------Set Your Environment-------------------------------
if NOT DEFINED MSVC_VERSION set MSVC_VERSION=15
if NOT DEFINED CMAKE_CONFIG set CMAKE_CONFIG=Release
if NOT DEFINED PYTHONHOME set PYTHONHOME=D:\pack_installer\anaconda_3
REM ----------------------------------------------------------
15表示vs2017,(vs2015应该是14,vs2019应该是17),release版本(此处不支持debug版本),PYTHONHOME=D:\pack_installer\anaconda_3为我的Anacondad安装路径。
然后在windows命令行窗口运行如下:
回车运行,报错问题1:
缺少CmakeList文件,解决办法:将主目录下的CMakeLists.txt拷贝到contrib文件夹中。继续重新运行。
补充Nronaldo同学的评论内容:如果编译过程中出现C++环境的问题,可尝试在CMakeLists.txt中将cxx_std_11改为cxx_std_17,或者在vs2017中修改为C++17(根据错误,自行尝试)
继续报错,问题2:
缺少matplotlib_cppConfig.cmake.in(在主目录cmake文件夹中)文件,解决办法:将主目录下的cmake文件夹拷贝到contrib文件夹中。继续重新运行。
继续报错,问题3:
缺少一大堆.cpp文件,报错原因:下载的文件中的路径有问题,解决办法:打开contrib文件夹下的CmakeList.txt文件 找到下面的内容,修改路径
//修改前
add_executable(fill_inbetween examples/fill_inbetween.cpp)
//修改后 多加了 ../
add_executable(fill_inbetween ../examples/fill_inbetween.cpp)
//下面的都要改,好像是 16 个
继续运行,该问题解决,报错问题4:
解决办法:打开主目录下的matplotlibcpp.h文件,屏蔽两行代码即可(大概第354,356行)
继续重新运行,开始编译,过程复杂看不懂,但是ok了。
在主目录的examples\build\bin\release\文件夹下生成.exe文件
至此,编译完成。(可以重新运行一遍,这样界面看起来比较舒服舒服了,也可不运行)
这看起来就舒服太多了。编译部分打完收工。
vs2017配置调用环境(和opencv的配置步骤一样)
1. 配置包含路径()
我这里PYTHONHOME设置路径为Anaconda的安装路径
下方的包含目录设置为Anaconda其中一个python环境的路径(我的Anaconda下有三个python环境包,其它的想的话,可以自己试一试)
2. 配置库目录
3. 配置 链接器
配置好之后,新建VS2017工程,用代码测试
#include "matplotlibcpp.h"
namespace plt = matplotlibcpp;
int main() {
plt::plot({ 1,3,2,4 });
plt::show();
}
继续报错,问题5:
出错原因:WinBuild.cmd中python环境路径和计算机环境变量中的路径不一致,(Anaconda的安装路径,不能是其中某个环境环境的路径,否则,开始Anaconda Prompt可能打不开)
解决办法:添加系统路径:PYTHONHOME
继续运行代码,问题5解决, 报错问题6:
解决办法:添加环境变量
matplotlib-cpp配置,Windows出错官网原因说明如下:
出错原因:没有qt支撑,解决办法:将你PYTHONHOME路径下的\Library\plugins\ 下的 platforms 文件夹复制到vs2017工程文件的x64/release/文件夹(与.exe文件同目录),最终解决问题。D:\pack_installer\anaconda_3\Library\plugins\platforms
重新运行代码,一切🆗。结果如下:
不知道为啥,我的笔记本电脑上报错问题比较多,以上为我的踩坑记录,希望对小伙伴们有用。这篇博客写的有点烂,(不太会写),正在考虑出视频,请小伙伴们关注。
安装过程中如若出现问题,欢迎各位小伙伴留言!
夜深了,兄弟们睡好!