数値計算の結果を実行時にgnuplotに渡す
数値計算の結果をデータファイルにして、gnuplotでグラフにする。
このときに、地味に面倒なのが、データファイルのいるディレクトリをコピーして、それをgnuplotに渡す作業。
このイライラを解消するために悪戦苦闘(と言っても、popen使えば良いだけなので、単に自分が情弱なだけorz)。
んで、「ついでに、pngファイルも自動で作らせてしまえ」と思い、さらに時間を浪費(主に打ち間違いが原因で無駄な時間を過ごす)。
この作業をプログラムで組めないかとあれこれ調べ、関数を作るまで至った。
それがこれ↓
pngファイルの名前を作るのに、無駄にプログラムが長くなってる印象。
(※2017/4/23追記:for文にすれば6行を3行に減らせる)
この名前の付け方を少し説明すると、数値計算のデータファイル名を、例えば"test.dat"としたときに、pngファイル名を"test.png"にしたかった。
だから、"test"の部分だけ抜き出すために、配列spng[]を用意して、そこに"."が現れるまでコピー。
で、最後にナル文字"\0"を追加。
ちなみに、自分はwindowsでやってるので、_popenだけど、Linuxとかだとpopenだったはずなので、そこは変更しないといけない。
ヘッダファイル作って、互換性保てるようにしたいなぁ・・・
あと、どういうグラフを書かせたいかによって、いじらないといけないので、これは試用という感じだな。