本文介紹在Visual Studio軟體中配置、編譯C++環境下matplotlibcpp庫的詳細方法。 matplotlibcpp庫是一個C++環境下的繪圖工具,其通過調用Python介面,實現在C++代碼中通過matplotlib庫的命令繪製各類圖像。由於其需要調用Python介面,因此在配置m ...
本文介紹在Visual Studio軟體中配置、編譯C++環境下matplotlibcpp
庫的詳細方法。
matplotlibcpp
庫是一個C++環境下的繪圖工具,其通過調用Python介面,實現在C++代碼中通過matplotlib
庫的命令繪製各類圖像。由於其需要調用Python介面,因此在配置matplotlibcpp
庫時有些較為麻煩的操作。本文就將matplotlibcpp
庫的具體配置方法進行詳細介紹。
1 Git配置
Git是一個分散式開源版本控制系統,在後期我們需要基於其完成vcpkg
包管理器的下載與安裝,因此需要首先完成Git的配置;具體方法大家可以參考下載、安裝Git並拷貝GitHub項目到本地的流程這篇文章。
2 vcpkg配置
vcpkg
是一個開源的C++包管理器,在後期我們需要基於其完成matplotlibcpp
庫的下載與安裝,因此需要首先完成vcpkg
的配置。
首先,選定一個路徑作為vcpkg
的保存路徑;隨後,在這一文件夾下,按下Shift
按鈕並同時右擊滑鼠,選擇“在此處打開Powershell視窗”。
隨後,將彈出如下所示的視窗。
接下來,在其中輸入如下的代碼,並運行。
git clone https://github.com/microsoft/vcpkg
具體如下圖所示。
稍等片刻,出現如下所示的界面,說明vcpkg
安裝完畢。
隨後,輸入如下代碼,進入vcpkg
保存路徑。
cd vcpkg
再輸入如下代碼,激活vcpkg
環境。
.\bootstrap-vcpkg.bat
具體如下圖所示。
運行完畢後,將得到如下所示的結果。
接下來,再輸入如下所示的代碼,將vcpkg
與我們的Visual Studio軟體相連接。
.\vcpkg integrate install
具體如下圖所示。
代碼運行完畢後,如下圖所示。
3 matplotlibcpp配置
接下來,我們即可開始進行matplotlibcpp
庫的配置。
3.1 matplotlibcpp安裝
首先,依然在剛剛的界面中,輸入如下代碼,安裝matplotlibcpp
庫。
.\vcpkg install matplotlib-cpp
代碼運行結束後,得到如下所示的結果。
隨後,輸入如下所示的代碼,安裝64位的matplotlibcpp
庫。
.\vcpkg install matplotlib-cpp:x64-windows
運行代碼後,得到如下所示的結果。
3.2 matplotlibcpp配置
首先,在剛剛配置的vcpkg
的保存路徑中,通過以下路徑,找到matplotlibcpp.h
文件,並將其打開。
隨後,在其#include
部分的最下方,添加如下代碼。
#include <string>
具體如下圖所示。
同時,在該文件340
行左右,將template
開頭的兩行註釋掉,如下圖所示。
4 Python配置
由於matplotlibcpp
庫是通過調用Python介面,實現在C++代碼中通過matplotlib
庫的命令繪製各類圖像,因此配置matplotlibcpp
庫時還需要保證電腦中擁有Python環境。而這裡的Python環境也有一個具體的要求——需要具有Debug
版本的Python。
因此,可以分為3種情況:第一種情況,是大家電腦中之前沒有安裝過任何Python環境;第二種情況,是大家之前有通過Anaconda下載Python環境;第三種情況,則是大家之前有通過Python官方下載Python環境。針對這三種情況該具體如何配置,我們也會在接下來的文章中具體提及。
首先,對於第二種情況,也就是之前有通過Anaconda下載Python環境的情況,大家從這裡開始看就好。首先,需要看一下Anaconda中Python的版本;如下圖所示,我這裡就是在Anaconda中有3.9.12
版本的Python。
其次,對於第一種情況,也就是之前沒有安裝過任何Python環境的情況,大家從這裡開始看就好。我們在Python的官方下載地址中,下載最新的Python版本即可(如果是之前有通過Anaconda下載Python環境的情況,大家這裡下載和自己Anaconda中Python版本不一樣的版本即可。
隨後,雙擊打開剛剛下載好的安裝包。對於第三種情況,即大家之前有通過Python官方下載Python環境的情況,那麼直接找到當初的安裝包,然後進行如下的操作即可。
首先,選擇“Customize installation”選項。
接下來的頁面,選擇預設的配置即可。
隨後的頁面,選中第一個方框中所包含的勾選項,併在其下方配置自定義安裝路徑;這個路徑建議大家自己修改一下,同時記下來這個路徑,之後會經常用到。
隨後,依據文章Windows電腦環境變數(用戶變數、系統變數)的修改提到的方法,首先將以下兩個路徑添加到環境變數中的用戶變數的Path
中。具體這兩個路徑的首碼,和大家前面所選的Python安裝路徑有關。
接下來,將這兩個路徑同樣在環境變數的系統變數的Path
中添加一下;此外,還要註意,如果大家的環境變數中,有原本的Python路徑,大家最好將原本的路徑放在我們新建的變數的下方,如下圖所示。
此外,還需要在系統變數中,添加如下所示的兩個內容;其中,“變數”一欄依次填寫PYTHONHOME
與PYTHONPATH
,“值”一欄就是剛剛我們的Python安裝路徑。
隨後,我們在電腦中進入Python環境,就預設進入我們剛剛配置的、新的Python環境;之後如果我們需要正常使用Python了,可以用我們這次配置的新的Python;也可以將剛剛配置的PYTHONHOME
與PYTHONPATH
兩個系統變數刪除,並將原有Python所對應的環境變數提前到剛剛配置好的Python的環境變數之前,從而使用我們原先版本的Python。
接下來,我們需要對新創建的Python進行matplotlib
庫與numpy
庫的安裝。這裡就使用Python最傳統的pip
安裝方法即可,首先輸入如下的代碼。
pip install -U matplotlib
出現如下所示的界面即說明matplotlib
庫已經安裝完畢。
隨後,輸入如下所示的代碼。
pip install numpy scipy matplotlib
即可完成numpy
庫的安裝。
5 解決方案配置
接下來,我們創建或打開需要調用matplotlibcpp
庫的解決方案。
首先,將前述Python安裝路徑下的以下兩個.dll
文件複製(具體文件名稱與Python版本有關)。
並將其複製到解決方案的文件夾下。
隨後,依據文章如何在Visual Studio新C++項目中調用之前配置過的庫?中提到的方法,分別進行以下配置。
首先,在“附加包含目錄”中,將Python和numpy
庫的include
文件夾放入其中。
其次,在“附加庫目錄”中,將Python安裝路徑下libs
文件夾的路徑放入其中。
再次,在“附加依賴項”中,將Python安裝路徑下libs
文件夾中如下所示的4個.lib
文件放入其中。
隨後,對於需要調用matplotlibcpp
庫的程式,需要添加以下代碼。
#include "matplotlibcpp.h"
namespace plt = matplotlibcpp;
具體如下圖所示。
隨後,即可開始運行代碼。這裡提供一個最簡單的matplotlibcpp
庫調用代碼。
#include "matplotlibcpp.h"
namespace plt = matplotlibcpp;
int main() {
plt::plot({ 1, 2, 3, 4 });
plt::show();
return 0;
}
運行代碼,出現如下所示的視窗。
以上,即完成了matplotlibcpp
庫的配置。