さっき、Pyhtonの便利な機能をC++で実現するにはどないするかしらと書いたが例えば matplotlib に似たような機能は実現可能なのであってワタクシは昨年の春に試していたのである。ま~ワタクシの記憶が1年後には消えるという事がバレたしだいでありま~す。
DELL OPTIPLEX 7010SFF Win 11 24H2(非推奨PC) VisualStudio2022 Communityで~す
matplot++ というライブラリがある。これはヘッダーファイルオンリーライブラリという範疇である・・・らしい。
なのであるで~す。ま~それはそれとして次の例題を見るでありま~す。
#include <cmath>
#include <matplot/matplot.h>
int main() {
using namespace matplot;
std::vector<double> x = linspace(0, 2 * pi);
std::vector<double> y1 = transform(x, [](auto x) { return sin(x); });
std::vector<double> y2 = transform(x, [](auto x) { return sin(x - 0.25); });
std::vector<double> y3 = transform(x, [](auto x) { return sin(x - 0.5); });
plot(x, y1, "g", x, y2, "b--o", x, y3, "c*");
show();
return 0;
}
ね、Python + matplotlib って感じですよね。linspace(), tranform, ラムダ式でして。
plot() ; show() とかね。いいね いいね 簡単でいいね。結果は

おおおお、出たぞ。出たぞ。どや !!
待て待て。なんか間違ってないか? 違うぞ、これは。。。。 はい、再検討ですね。
一旦 中断。
原因判明 画像間違えた (笑) 下が正しい画像でして。。。。てへ。
ところでヘッダーファイルオンリーライブラリというのだから、
#include <matplot/matplot.h>
これだけで済むかと思ったらそうではなかったので~す。VisualStudio2022 CommunityでProject Propertyに追加のインクルードパスの設定、追加のライブラリパスの設定、ライブラリ名の設定が必要なのでありま~す。ヘッダーオンリーじゃないじゃあああぁぁぁぁぁぁ コンコンチキ!! コンチキショー!! ちみいはコウメ太夫かよって(笑)
そういうときはVisualStudio2022 CommunityではProperty StyleSheetを作って使い回すとよかろう。いちいちProperty開いて設定しないで済む。既存のProperty Sheetを追加とするだけなのでありま~す。
そしてさらに便利なのがあるので~す。それは VCpkgというMicrosoft提供のパッケージ管理ツールを使うので~す。ま~す病と で~す病は飽きただぉ。 おお、だぉ病かーーーい。
つまり、VCpkgでMatplot++をインストールするとVisualStudio2022 CommunityのPropertyをいじらなくても良いのである。そこら去年知ったワタクシは感動しました。
そしてVCpkgでOpenCVをインストールして見たのである。ま~しかし、便利っちゃあ便利ではあるものの、そもそもプログラムを書かないワタクシは、ま~いいか である。
VScodeで使う場合には >g++ の後ろにPathやらライブラリ名やら書けばなんとかなるかも知れないである。Jsonファイルを修正すると何とかなるかもである。そんな技術・知識はワタクシはないのでVisualStudio2022 Communityを使うのである。
とにかくPython + matplotlib のような使い方が C++でできたのであるだぉ。どや。
ただねえ、ワタクシはVScodeがメインなのでねえ。起動の遅いVisualStudio2022 Communityはなるべく使わない方針なのであるぞの。ま、しゃーない。使える道具を使うしかないのである。
それでいいのである。小さなノコギリで杉の大木を切り倒そうって・・・無理ぃなのである。つーか、何のたとえなのさ、それは。
いや、なんか言ってみたら面白いかと思って(´・ω・`)
軸、タイトル、グリッド追加した
蛇足 つまり蛇の足は八本・・・ちがーう、それはタコの足じゃあ
ヘッダーファイルオンリーライブラリで昨日インストールした Eigenは
#indlude<ここにEigen Path書く> でけで使えた。これはヘッダーオンリーと言える。気がする。ま~しかし、ヘッダーファイルオンリーライブラリもいろいろあるのだろう。
詳しくは知らぬ。ホンマに詳しくは知らぬのであるだよよん。(´・ω・`)
posted by toinohni at 09:02| 東京 ☀|
Comment(0)
|
ソフト系雑学
|

|