C++绘图库matplotlibcpp在Visual Studio中的配置方法

2301_81505962 2024-01-30 12:14:15

  本文介绍在Visual Studio软件中配置、编译C++ 环境下matplotlibcpp库的详细方法。

  matplotlibcpp库是一个C++ 环境下的绘图工具,其通过调用Python接口,实现在C++ 代码中通过matplotlib库的命令绘制各类图像。由于其需要调用Python接口,因此在配置matplotlibcpp库时有些较为麻烦的操作。本文就将matplotlibcpp库的具体配置方法进行详细介绍。

1 Git配置

  Git是一个分布式开源版本控制系统,在后期我们需要基于其完成vcpkg包管理器的下载与安装,因此需要首先完成Git的配置;具体方法大家可以参考分布式版本控制系统Git的下载、安装与使用其复制GitHub项目代码的方法https://blog.csdn.net/zhebushibiaoshifu/article/details/127412101%EF%BC%89%E8%BF%99%E7%AF%87%E6%96%87%E7%AB%A0%E3%80%82

2 vcpkg配置

  vcpkg是一个开源的C++ 包管理器,在后期我们需要基于其完成matplotlibcpp库的下载与安装,因此需要首先完成vcpkg的配置。

  首先,选定一个路径作为vcpkg的保存路径;随后,在这一文件夹下,按下Shift按钮并同时右击鼠标,选择“在此处打开Powershell窗口”。

https://img-blog.csdnimg.cn/49107026365f40f0b7e2ddc6ca7e356b.png

  随后,将弹出如下所示的窗口。

https://img-blog.csdnimg.cn/a1e8485135ce4a68a8ca1c55d4c45bb5.png

  接下来,在其中输入如下的代码,并运行。

git clone https://github.com/microsoft/vcpkg

  具体如下图所示。

https://img-blog.csdnimg.cn/57bff49df20e472db32a05b4c8d9710a.png

  稍等片刻,出现如下所示的界面,说明vcpkg安装完毕。

https://img-blog.csdnimg.cn/174a6294b3e6403a9b9ba31926a2ddd3.png

  随后,输入如下代码,进入vcpkg保存路径。

cd vcpkg

  再输入如下代码,激活vcpkg环境。

.\bootstrap-vcpkg.bat

  具体如下图所示。

https://img-blog.csdnimg.cn/a6a56ac5b1b04a8f8314ca00fb183007.png

  运行完毕后,将得到如下所示的结果。

https://img-blog.csdnimg.cn/b0a1f0400ac14dad919f4bfce0c16215.png

  接下来,再输入如下所示的代码,将vcpkg与我们的Visual Studio软件相连接。

.\vcpkg integrate install

  具体如下图所示。

https://img-blog.csdnimg.cn/905ccb522c484e53bda026ed5f41155f.png

  代码运行完毕后,如下图所示。

https://img-blog.csdnimg.cn/8ba14d4fc36147ad9974e70c676ce13a.png

3 matplotlibcpp配置

  接下来,我们即可开始进行matplotlibcpp库的配置。

3.1 matplotlibcpp安装

  首先,依然在刚刚的界面中,输入如下代码,安装matplotlibcpp库。

.\vcpkg install matplotlib-cpp

  代码运行结束后,得到如下所示的结果。

https://img-blog.csdnimg.cn/2f5c79a785d24aec8bea0be4982072b4.png

  随后,输入如下所示的代码,安装64位的matplotlibcpp库。

 .\vcpkg install matplotlib-cpp:x64-windows

  运行代码后,得到如下所示的结果。

https://img-blog.csdnimg.cn/4231ae0b321e40b99baedecb1e5272b0.png

3.2 matplotlibcpp配置

  首先,在刚刚配置的vcpkg的保存路径中,通过以下路径,找到matplotlibcpp.h文件,并将其打开。

https://img-blog.csdnimg.cn/c6d88baf824b4927a71c9836b11ce143.png

  随后,在其#include部分的最下方,添加如下代码。

#include <string>

  具体如下图所示。

https://img-blog.csdnimg.cn/410d9ab4f3e64ab2b5e9ae8421d3ffe1.png

  同时,在该文件340行左右,将template开头的两行注释掉,如下图所示。

https://img-blog.csdnimg.cn/7477ddba25034d018c59cf68cd93d37b.png

4 Python配置

  由于matplotlibcpp库是通过调用Python接口,实现在C++ 代码中通过matplotlib库的命令绘制各类图像,因此配置matplotlibcpp库时还需要保证电脑中拥有Python环境。而这里的Python环境也有一个具体的要求——需要具有Debug版本的Python

  因此,可以分为3种情况:第一种情况,是大家电脑中之前没有安装过任何Python环境;第二种情况,是大家之前有通过Anaconda下载Python环境;第三种情况,则是大家之前有通过Python官方下载Python环境。针对这三种情况该具体如何配置,我们也会在接下来的文章中具体提及。

  首先,对于第二种情况,也就是之前有通过Anaconda下载Python环境的情况,大家从这里开始看就好。首先,需要看一下AnacondaPython的版本;如下图所示,我这里就是在Anaconda中有3.9.12版本的Python

https://img-blog.csdnimg.cn/3176371182a242afa11c4bd778d8341c.png

  其次,对于第一种情况,也就是之前没有安装过任何Python环境的情况,大家从这里开始看就好。我们在Python官方下载地址https://www.python.org/downloads/%EF%BC%89%E4%B8%AD%EF%BC%8C%E4%B8%8B%E8%BD%BD%E6%9C%80%E6%96%B0%E7%9A%84**Python**%E7%89%88%E6%9C%AC%E5%8D%B3%E5%8F%AF%EF%BC%88%E5%A6%82%E6%9E%9C%E6%98%AF%E4%B9%8B%E5%89%8D%E6%9C%89%E9%80%9A%E8%BF%87**Anaconda**%E4%B8%8B%E8%BD%BD**Python**%E7%8E%AF%E5%A2%83%E7%9A%84%E6%83%85%E5%86%B5%EF%BC%8C%E5%A4%A7%E5%AE%B6%E8%BF%99%E9%87%8C%E4%B8%8B%E8%BD%BD%E5%92%8C%E8%87%AA%E5%B7%B1**Anaconda**%E4%B8%AD**Python**%E7%89%88%E6%9C%AC%E4%B8%8D%E4%B8%80%E6%A0%B7%E7%9A%84%E7%89%88%E6%9C%AC%E5%8D%B3%E5%8F%AF%E3%80%82

https://img-blog.csdnimg.cn/79e5ea80987447ee8e4bbe9497531cf8.png

  随后,双击打开刚刚下载好的安装包。对于第三种情况,即大家之前有通过Python官方下载Python环境的情况,那么直接找到当初的安装包,然后进行如下的操作即可。

  首先,选择“Customize installation”选项。

https://img-blog.csdnimg.cn/15163e49a9574d35993ecf865e85a7bd.png

  接下来的页面,选择默认的配置即可。

https://img-blog.csdnimg.cn/8bcb996be571401daca380bce70cad68.png

  随后的页面,选中第一个方框中所包含的勾选项,并在其下方配置自定义安装路径;这个路径建议大家自己修改一下,同时记下来这个路径,之后会经常用到。

https://img-blog.csdnimg.cn/1f5d4d1cddf3425783e5d64bc6d88e0f.png

  随后,依据文章Windows 10 用户变量、系统变量等环境变量新建、编辑修改与删除方法https://blog.csdn.net/zhebushibiaoshifu/article/details/115319801%EF%BC%89%E6%8F%90%E5%88%B0%E7%9A%84%E6%96%B9%E6%B3%95%EF%BC%8C%E9%A6%96%E5%85%88%E5%B0%86%E4%BB%A5%E4%B8%8B%E4%B8%A4%E4%B8%AA%E8%B7%AF%E5%BE%84%E6%B7%BB%E5%8A%A0%E5%88%B0**%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F**%E4%B8%AD%E7%9A%84**%E7%94%A8%E6%88%B7%E5%8F%98%E9%87%8F**%E7%9A%84%60Path%60%E4%B8%AD%E3%80%82%E5%85%B7%E4%BD%93%E8%BF%99%E4%B8%A4%E4%B8%AA%E8%B7%AF%E5%BE%84%E7%9A%84%E5%89%8D%E7%BC%80%EF%BC%8C%E5%92%8C%E5%A4%A7%E5%AE%B6%E5%89%8D%E9%9D%A2%E6%89%80%E9%80%89%E7%9A%84**Python**%E5%AE%89%E8%A3%85%E8%B7%AF%E5%BE%84%E6%9C%89%E5%85%B3%E3%80%82

https://img-blog.csdnimg.cn/a4cfc3e9e71045678d65530fc491b4ba.png

  接下来,将这两个路径同样在环境变量系统变量Path中添加一下;此外,还要注意,如果大家的环境变量中,有原本的Python路径,大家最好将原本的路径放在我们新建的变量的下方,如下图所示。

https://img-blog.csdnimg.cn/06912148a8494d7382703e983d867d1e.png

  此外,还需要在系统变量中,添加如下所示的两个内容;其中,“变量”一栏依次填写PYTHONHOMEPYTHONPATH,“”一栏就是刚刚我们的Python安装路径。

https://img-blog.csdnimg.cn/cb7e908c27234922908b0376fe43d9de.png

  随后,我们在计算机中进入Python环境,就默认进入我们刚刚配置的、新的Python环境;之后如果我们需要正常使用Python了,可以用我们这次配置的新的Python;也可以将刚刚配置的PYTHONHOMEPYTHONPATH两个系统变量删除,并将原有Python所对应的环境变量提前到刚刚配置好的Python环境变量之前,从而使用我们原先版本的Python

  接下来,我们需要对新创建的Python进行matplotlib库与numpy库的安装。这里就使用Python最传统的pip安装方法即可,首先输入如下的代码。

pip install -U matplotlib

  出现如下所示的界面即说明matplotlib库已经安装完毕。

https://img-blog.csdnimg.cn/6ecf176744274368bc6ea1a7984fe285.png

  随后,输入如下所示的代码。

pip install numpy scipy matplotlib

  即可完成numpy库的安装。

5 解决方案配置

  接下来,我们创建或打开需要调用matplotlibcpp库的解决方案。

  首先,将前述Python安装路径下的以下两个.dll文件复制(具体文件名称与Python版本有关)。

https://img-blog.csdnimg.cn/40c857db5f064e3c85c74fda8c16c58d.png

  并将其复制到解决方案的文件夹下。

https://img-blog.csdnimg.cn/5bbf3d635b0f481c84c6f4bbfe351f10.png

  随后,依据文章Visual Studio软件调用已经配置、编译好的C++第三方库的方法https://blog.csdn.net/zhebushibiaoshifu/article/details/127171298%EF%BC%89%E4%B8%AD%E6%8F%90%E5%88%B0%E7%9A%84%E6%96%B9%E6%B3%95%EF%BC%8C%E5%88%86%E5%88%AB%E8%BF%9B%E8%A1%8C%E4%BB%A5%E4%B8%8B%E9%85%8D%E7%BD%AE%E3%80%82

  首先,在“附加包含目录”中,将Pythonnumpy库的include文件夹放入其中。

https://img-blog.csdnimg.cn/10f4e2466fc5470e8e944a454f861f95.png

  其次,在“附加库目录”中,将Python安装路径下libs文件夹的路径放入其中。

https://img-blog.csdnimg.cn/6006c35196924fa0aaa25b0af273da7d.png

  再次,在“附加依赖项”中,将Python安装路径下libs文件夹中如下所示的4个.lib文件放入其中。

https://img-blog.csdnimg.cn/b9dd4ec91c93472fb89a039463b9a466.png

  随后,对于需要调用matplotlibcpp库的程序,需要添加以下代码。

#include "matplotlibcpp.h"
namespace plt = matplotlibcpp;

  具体如下图所示。

https://img-blog.csdnimg.cn/519c405c783f41979c0b54d68bc00794.png

  随后,即可开始运行代码。这里提供一个最简单的matplotlibcpp库调用代码。

#include "matplotlibcpp.h"

namespace plt = matplotlibcpp;

int main() {
    plt::plot({ 1, 2, 3, 4 });
    plt::show();
    return 0;
}

  运行代码,出现如下所示的窗口。

https://img-blog.csdnimg.cn/68df4ab1da81420e9f59ce011dc306c1.png

  以上,即完成了matplotlibcpp库的配置。

欢迎关注:疯狂学习GIS


文章来源: https://blog.csdn.net/zhebushibiaoshifu/article/details/127412900
版权声明: 本文为博主原创文章,遵循CC 4.0 BY-SA 知识共享协议,转载请附上原文出处链接和本声明。


...全文
346 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

6,217

社区成员

发帖
与我相关
我的任务
社区描述
微软技术社区为中国的开发者们提供一个技术干货传播平台,传递微软全球的技术和产品最新动态,分享各大技术方向的学习资源,同时也涵盖针对不同行业和场景的实践案例,希望可以全方位地帮助你获取更多知识和技能。
windowsmicrosoft 企业社区
社区管理员
  • 微软技术分享
  • 郑子铭
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

微软技术社区为中国的开发者们提供一个技术干货传播平台,传递微软全球的技术和产品最新动态,分享各大技术方向的学习资源,同时也涵盖针对不同行业和场景的实践案例,希望可以全方位地帮助你获取更多知识和技能。

予力众生,成就不凡!微软致力于用技术改变世界,助力企业实现数字化转型。

试试用AI创作助手写篇文章吧