matplotlib-cpp は、Python およびその科学計算用ライブラリ NumPy のためのグラフ描画ライブラリ matplotlib を、C++ から利用できるようにしたヘッダーオンリーライブラリです。MIT ライセンスに従っています。
matplotlib-cpp がどんなものか、使ってみました。プロジェクトサイトは下記の Github にあります。
matplotlib-cpp のプロジェクトサイト (Github)
下記の OS 環境で動作確認をしています。
Fedora Linux 36 | x86_64 |
適当なディレクトリ内で、上記プロジェクトサイトからクローンしておきます。
$ git clone git@github.com:lava/matplotlib-cpp.git
:
:
その他に必要なパッケージは、Python の matplotlib と numpy です。下記のようにしてインストールします。matplotlib は numpy に依存していますので、一緒にインストールされます。なお、コンパイルには g++ (gcc-c++) 使います。
[bitwalk@fedora-pc ~]$ sudo dnf install python3-matplotlib メタデータの期限切れの最終確認: 0:16:38 時間前の 2022年06月29日 20時14分15秒 に実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン Repo サイズ ================================================================================ インストール: python3-matplotlib x86_64 3.5.2-4.fc36 updates 3.0 M 依存関係のインストール: libqhull_r x86_64 1:7.2.1-9.fc36 fedora 169 k python3-appdirs noarch 1.4.4-5.fc36 fedora 22 k python3-brotli x86_64 1.0.9-7.fc36 fedora 319 k python3-cycler noarch 0.11.0-2.fc36 fedora 19 k python3-fonttools noarch 4.29.1-1.fc36 fedora 1.4 M python3-fs noarch 2.4.11-10.fc36 fedora 206 k python3-kiwisolver x86_64 1.4.1-1.fc36 fedora 65 k python3-matplotlib-data noarch 3.5.2-4.fc36 updates 507 k python3-matplotlib-data-fonts noarch 3.5.2-4.fc36 updates 2.3 M python3-matplotlib-tk x86_64 3.5.2-4.fc36 updates 42 k python3-munkres noarch 1.1.2-11.fc36 fedora 22 k python3-numpy x86_64 1:1.22.0-2.fc36 fedora 5.7 M python3-numpy-f2py x86_64 1:1.22.0-2.fc36 fedora 261 k python3-pillow-tk x86_64 9.1.0-1.fc36 updates 27 k python3-scipy x86_64 1.8.1-1.fc36 updates 18 M トランザクションの概要 ================================================================================ インストール 16 パッケージ ダウンロードサイズの合計: 32 M インストール後のサイズ: 132 M これでよろしいですか? [y/N]: y : :
以下のサンプルをコンパイルしてみます。
3d.cpp
クローンした matplotlib-cpp から matplotlibcpp.h を、サンプル 3d.cpp があるディレクトリ内にコピーして、以下のようにコンパイルして実行します。
[bitwalk@fedora-pc test_matplotlib-cpp]$ g++ 3d.cpp -std=c++11 -I/usr/include/python3.10 -lpython3.10 -o 3d [bitwalk@fedora-pc test_matplotlib-cpp]$ ./3d
コンパイルした 3d の実行結果
C++ で matplotlib を簡単に利用できるのは確認できましたが、さて、何に使おうか…。
参考サイト
- matplotlib-cppでC++からグラフを表示する | 東京工業大学デジタル創作同好会traP
- c++でmatplotlibを使う – MY ROBOTICS
- C++でグラフ描画をするならmatplotlib-cppを使ってみる? | HIRO LAB BLOG
- C++のコードから簡単にmatplotlibを使ってグラフを作成する方法 - MyEnigma
にほんブログ村
0 件のコメント:
コメントを投稿