1read 100read
2013年17UNIX33: gnuplot を使おう。 その3 (202)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
GNOMEの質問はここに書き込め! (616)
コマンドオプション (157)
telnetについて語れ。 (313)
メーラスレッド (418)
シェルスクリプト総合 その21 (906)
bashで補完スレ (374)
gnuplot を使おう。 その3
1 :2011/08/25 〜 最終レス :2013/09/24 グラフ描画ソフト gnuplot のスレ。 gnuplot 公式 Web ページ http://www.gnuplot.info/ 前スレ gnuplot を使おう。 その2 http://hibari.2ch.net/test/read.cgi/unix/1164719425/
2 : ■過去スレ gnuplot を使おう。 http://pc8.2ch.net/test/read.cgi/unix/1002453983/ ■役立ちそうなページ gnuplot tips (not so Frequently Asked Questions) http://t16web.lanl.gov/Kawano/gnuplot/ gnuplot (Takeno Lab) 日本語まぬある http://takeno.iee.niit.ac.jp/%7Efoo/gp-jman/ GNUPLOTの第一歩 http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/gnuplot-intro/ gnuplot tips http://wwwnucl.ph.tsukuba.ac.jp/~inakura/gnuplot/gnuplot.html
3 : >1 乙
4 : >1 乙
5 : >>1 http://gnuplot.sourceforge.net/ いまは,こっちのほうが公式ホームでなかったですか。 http://www.gnuplot.info/ はミラーになったのでは?
6 : ここも忘れてはいけないと思いますが。 http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gnuplot.html
7 : >>2 gnuplot tips wwwnucl.ph.tsukuba.ac.jp/~inakura/gnuplot/gnuplot.html はリンク切れ。
8 : >>1 おつ
9 : うに板に即死判定あったっけ?
10 : Unix板の データ解析ツールoctaveを語ろう http://pc12.2ch.net/test/read.cgi/unix/1086016412/ 981で即死しました。
11 : >>9 10未満。
12 : >>10 いや、それは即死じゃない 980越えて24時間レスがなかったら落ちるのは全板共通 即死ってのは立ったばかりのスレが引っかかるやつ >>11 ありがと じゃもう大丈夫か
13 : Release plans: Version 4.4.4 and beyond もうすぐ,4.4.4がでるようです。 4.4の次は4.6でなくて,Version 5になるのかな。 http://sourceforge.net/mailarchive/message.php?msg_id=28074411
14 : 前スレの972で >wgnuplotで起動して最初にplotするときだけ時間が異常にかかります ですがgnuplot\binary\etc\fontsにあるfonts.confを編集すればTEMPで指定してあるところ以外にも自由におけるようです ttp://swordfish.s53.xrea.com/2009/11/18/p848/ gimpですが同様の方法で変更できました
15 : >>14 <cachedir>WINDOWSTEMPDIR_FONTCONFIG_CACHE</cachedir> <cachedir>~/.fontconfig</cachedir> のことですか?
16 : >>15 です。>>14 の ttp://swordfish.s53.xrea.com/2009/11/18/p848/ を見てなかったm(__)m。 これに書いてあるわけですね。
17 : >>14 前スレの972の現象は,cvs版のバイナリ(Win版)ではおきないようです。 ttp://www.tatsuromatsuoka.com/gnuplot/Eng/winbin/
18 : Fortranのバイナリ形式で出力したデータをgnuplotでプロットしたいのですが、 どう書けば良いかわからないので教えてください。 以下のように出力したデータ (円柱座標系、R方向,Z方向に0.02mごと、theta方向に1度ことに出力)を、 k=0で指定されるR-Z断面について、Bz成分の強度のグラフをpm3dで描きたいです。 write(10) intA, intB, intC, intD ! 4byte+単精度整数×4+4byte=24byte write(10) realA, realB, realC, realD ! 4byte+倍度浮動小数点×4+4byte=40byte do k = 0,359 ! ← 円柱座標系のtheta方向 write(10) ((Bx(i,j,k), By(i,j,k), Bz(i,j,k), i=0,100), j=0,100) end do これをプロットしようと、以下の様に途中まで書きましたが、 formatやusingをどのように書けば良いのか教えてください。 splot 'fort.10' binary \ skip=64 \ format="%*int%???%*int" \ endian=big \ array=(101,101) \ scan=xy \ dx=0.02 \ dy=0.02 \ using ? with pm3d title'B_{x}' gnuplotのバージョンは4.4、Fortranのコンパイラはifortを使っています。
19 : 追記 Bx、By、Bzはいずれも倍精度実数です。
20 : windowsのgnuplotのwxtでdashを使いたいんだけど無理なのかな? アンチエイリアス機能が便利でそのままコピペして使いたい 他の方法でdash扱ってると面倒すぎる
21 : >>20 set term wxt dashed test
22 : >>21 まさにすべて解決した気分。この先どうなるかわからないけど 非常に有難い
23 : データのうち、一部分だけ別のpoint typeでプロットしたいのですができますか? 全ての点をlineでつなぎぐので別々にプロットするのはなしでお願いします。
24 : すいません自己解決しました。
25 : Windows7でgnuplot4.4.4を使っているのですが、EPSを作成する際にラベルに日本語を使用した場合、 数字などの半角文字の文字間隔が広くなってしまい、見栄えが悪く困っています。 例えば http://www.obihiro.ac.jp/~suzukim/masuda/utils/gnuplot.html ここに解説されている「日本語を含むEPSファイルの保存」のとおりにEPSを作った場合、 http://www.obihiro.ac.jp/~suzukim/masuda/utils/gnuplot_lc_eps.png のような出力が欲しいのですが、私の環境では http://www.dotup.org/uploda/www.dotup.org2282634.png のように出力されてしまうわけです。 どなたか解決方法を教えていただけないでしょうか。
26 : 手元にgnuplot-4.4.4がないので,cvs版(4.5)でやってみました。 フォントを"GothicBBB-Medium-83pv-RKSJ-H" で指定して shift-jisでやったところお望みに近いグラフができました。 ちなみにWindows XPです。
27 : "GothicBBB-Medium-UniJIS-UTF8-H"でUTF-8で保存でもうまくいきました。 ghostscriptのバージョンは9.00です。
28 : gnuplot-4.4.4をダウンロードしてやってみました。 私の環境ではEUCでは,postscriptファイルが壊れて見れませんでした。 "GothicBBB-Medium-83pv-RKSJ-H" shift-jis "GothicBBB-Medium-UniJIS-UTF8-H" UTF-8 でうまくいきました。ghostscriptのバージョンなどにもよるかもしれませんね。
29 : >>26-28 今まではGhostscript9.02を使っていたのですが、9.00を使ったところ問題なく出力されました。 ありがとうございました。
30 : >>25-29 http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gpinfo-2011.html#info-20111120 に詳しい解説がなされています。
31 : こんなサイトがあるようです。 なかなか凝ったプロットがかけるようです http://www.phyast.pitt.edu/~zov1/gnuplot/html/intro.html
32 : うお、すげえ
33 : Windowsで特定のアプリケーションのCPU使用率と測定開始時間から終了時間までを測定しGnuplotを使いグラフにしたいのですがCPU使用率を計るにはどうしたらよろしいでしょうか?
34 : gnuplot関係なさ杉ワラタwパフォーマンスカウンターでできるよ
35 : gnuplot -p scriptfile.gp なんて感じで、スクリプトファイルを読み込ませて起動したとします。 この時、scriptfileg.gp の中で gnuplot が読み込んだスクリプトファイルの名前を取得する事ってできるでしょうか?
36 : 俺は label とかに TeX 使いまくてたから、今だに plus 使ってるよ。。。 どうしたら良いのか。。。
37 : >>36 epslatexとかどう? gnuplot走らせるところから、出力されたTeXファイルにヘッダ加えてコンパイル、目的の形式に変換 までスクリプトで自動化すればそう面倒ではないけど
38 : いや、4系の高機能に惹かれるのだが、これまでの資産のせいで乗り移れないってこと。 両方入れれば良いのだが、FreeBSDのポーツだと排他的だし。。。
39 : 何故pyxplotの話にならないのだろう(ぼそ)
40 : グラフをプロットして出力するとデフォルトだと横長の画像が出力されるけど これを4:3の大きさに指定したり、グラフの枠を指定して(できればピクセル単位で)出力ってできる? x軸y軸で4:3を比率調整で作っても、それがx軸y1軸y2軸になるとy2軸側の文字が入って 画像としては4:3だけどグラフが4:3じゃなくなってしまう
41 : 出力された画像を4:3に加工するんじゃ駄目なの?
42 : >>40 set term wxt size 600,800 とか。 詳しくは使用する terminal のヘルプを見てくれ。
43 : gnuplot 4.6-rc1がでました。 Windows,Cygwin,DJGPPのバイナリも配布されていま。 Windows 版は,今回からインストーラー形式になっています。 また,日本語環境でインストールはデフォールトは日本語環境となります。 初心者には,インストールがずいぶん簡単になるようです。 http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.rc1/
44 : 理論上+∞に発散して閾値を超えると-∞から始まる曲線を描写しようと考えてるんだけど 実際のデータは無限大に行くわけでもなく、普段0.001程度の値が1まで行って-1まで 一気に落ちるって感じになってる。 こういうデータを無限に発散しているように見せるテクってある? +∞から-∞の点を繋ぐ線を消したい
45 : 2本に分けて描く
46 : (abs(1/x)<c)?(1/x):(0/0) 定数cとsampleの値を適当に調節する
47 : >>45 無限に発散する点と普通に0を通過していく点があるから 2本に分けるにも結構難しかった もっと効率よくできないものか >>46 計算ソフトで出力されたデータをgnuplotに読み込ませて描写しているから 関数表現だと無理だと思う それをプロットに応用できればいいのだが… 計算能力の問題で>普段0.001程度の値が1まで行って-1まで一気に落ちる という結果になってる。 あくまで例で綺麗に1から-1まで一瞬に移動してくれるわけでもなく 理論上無限だけど、その点は効果が薄いために 他の発散は1から-1まで下がるのに対して0.05から-0.05に下がる点があったり 発散の度合いにも差があって、発散が弱いと普通に0を通っているのか発散しているのか見分けが難しい
48 : >>47 >計算ソフトで出力されたデータをgnuplotに読み込ませて描写しているから > 関数表現だと無理だと思う Help ternaryをみると次のようなものがあるから,三項演算子とusingで 可能だと思います。 plot 'file' using 1:( $4<0 ? 1/0 : ($2+$3)/2 )
49 : sin 関数のグラフで x 軸のメモリにπを入れる方法ってない?
50 : >>49 gnuplot のturial.pdf のFigure 5 にlatex terminal での例がある。 set terminal latex set output "eg4.tex" set format y "$%g$" set format x "$%.2f$" set title 'This is $\sin(x)$' set xlabel "This is the $x$ axis" set ylabel "$\\sin(x)$" unset key set xtics ('$-\pi$' -pi,\ '$-\frac{\pi}{2}$' -pi/2,\ "0" 0,\ '$\frac{\pi}{2}$' pi/2,\ '$\pi$' pi) plot [-pi:pi] [-1:1] sin(x) Latex terminalが使えないならpostscript enhanced でやることが考えられる。
51 : >>50 turial.pdf ==> tutorial.pdf
52 : >>50 ありがとう! よく,emf ファイルで出力するからこの方法で大丈夫か 心配だったけど emf も enhance 付ければ出力できるね!
53 : >>50 >>52 emfで enhancedでやってみた。 set terminal emf enhanced set output "sinpi.emf" set title 'This is sin(x)' set xlabel "This is the x axis" set ylabel "sin(x)" unset key set xtics ('-{/Symbol p}' -pi, \ '-{/Symbol p} / 2' -pi/2, \ '0' 0 , \ '{/Symbol p} / 2' pi/2, \ '{/Symbol p}' pi) plot [-pi:pi] [-1:1] sin(x)
54 : "Skipping data file with no valid points"のエラーってなんなんですか? どんなコードもこれが出てきてしまってグラフィックができないです。
55 : 英語で書かれているとおりだよ。 無効なデータをスキップしましたってこと。 データのフォーマットがおかしいんじゃないの?
56 : >>54 実行できないコードの一つでもさらせば,解答がつくかも
57 : x データが 48〜120,218〜289 という具合に データの塊が2つにわかれているんだけど, これを省略線(波線2つ)を入れて省略するみたいに 表現できないかな?
58 : >>57 データではないけどそういう例はある http://www.phyast.pitt.edu/~zov1/gnuplot/html/broken.html
59 : >>58 ありがとう! 簡単にできるわけじゃないのねw. とりあえず,じっくり読み考えながらやってみるわ.
60 : gnuplot version 4.6 released!
61 : ↑ あららら・・・ インストール 変わっちゃったね?
62 : gnuplot 4.6.0がでてます。 http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/
63 : >>62 うああ,かぶったm(__)m。 >>61 Windows版ですね。インストーラーがついてますよね。 でも,従来型のzipもあります。
64 : set yrange [0:2e+9] set format y "%s%c" としたとき、Y目盛りが 期待: 500M, 1G, 1.5G, 2G 実際: 500.000000M, 1.000000G, 1.500000G, 2.000000G となります。 ソースを見ると、gprintfの%sでは、stdioのprintfの%fが使われているっぽい。 %gなら余計な0は表示されないのに、%fが使われている積極的な理由ってあるのかな? とりあえずソースいじれば何とかなりそうだけど、 自分だけで使ってるわけじゃないので、それはやりたくないんだよな。
65 : 4.4以降でterminal windowsとかでemfを吐くと それをパワポ上でグループ解除すると枠線らしきものが かなりのでかさで現れて酷いことになる wxtだと確かに綺麗だけど ビットマップ扱いで拡大するとボヤけたりepsに変換すると汚くなる ボヤけないようにemfで保存すると枠線が・・・となる term windowsだと破線の太さをgnuplot上で太くできないから 仕方なくwxt使ってるんだけど wxtで出力された見た目のままベクター形式で出力できないのだろうか
66 : > wxtで出力された見た目のままベクター形式で出力できないのだろうか pdfcairo powerpointで読み込む方法があるのか知らんけど
67 : ylabelを左じゃなくて、軸の上に表示したい
68 : >>67 ylabel ではなく,label をグラフの外の座標に 設定すれば良いんじゃないだろうか?
69 : gnuplot> set pm3d map gnuplot> splot [:2*pi][:2*pi] sin(x)*cos(y) ってやるとy軸の範囲が0~7になって上に空白が入っちゃうのってどうやって直したらいい?
70 : >>69 下限を設定したらうまくいったよ
71 : >>70 おお!ありがとうございます!
72 : ver4.6でグラフをemfにしてファイル出力してるんだけど powerpoint上でグループ解除するとグラフには関係ない謎の透明で巨大な枠が 出現して、作業効率が下がるんだけどこれを解決できないだろうか ver4.2ではこんなことはなかったんだが 仕様でも変わった・・・?
73 : ↓みたいなfor文において plot for [2:3] "hoge.dat" using 1:i ここでusingにabsなどの処理をしたいときはどうやればいいですか? using 1:abs(i) としたら案の定駄目でした
74 : gnuplot> q=1.60e-19 gnuplot> print q**16 1.84467440737095e-301 gnuplot> print q**20 0.0 上記のように、q=1.60e-19の累乗が大きい値になると、計算結果が0.0になってしまいます。 どうすれば、正確な値がでてきますか? (次に続く)
75 : オーバーフロー?
76 : この場合アンダーフローじゃね?
77 : そっか、マイナスついていたか。 確かにアンダーフローだな。
78 : gnuplotの問題ってわけじゃないね。 何事にも限りがあるってことだ doubleが64ビットより多い処理系でビルドすればましにはなるかな。 いずれにしろ限りはあるが
79 : set xtics (pi)にした時、横軸に3.14,6.28,…じゃなくて π,2π,…ってするにはどうしたらいいの?
80 : set xtics (\ "-2{/Symbol p}" -2*pi, \ "-3{/Symbol p} / 2" -3*pi/2, \ "-{/Symbol p}" -pi, \ "-{/Symbol p} / 2" -pi/2, \ "0" 0, \ "{/Symbol p} / 2" pi/2, \ "{/Symbol p}" pi, \ "3{/Symbol p} / 2" 3*pi/2, \ "2{/Symbol p}" 2*pi \ )
81 : >>73 http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gpinfo-2012.html#info-20120603 によると, plot for [i=2:3] 'hoge.dat' using 1:(abs($i)) すべきのようです。
82 : 1つのグラフに対して上と下のx軸で別の単位を使うことはできますか? 可視光線の透過スペクトルで下に波長(nm),上に波数(/cm)を表示したいです. 下軸の波長を100程度の等間隔にして,上に波数(=10^7/波長)の目盛りを付けられませんか
83 : set x2label set x2tics nomirror plot hoge axes x2y1
84 : こういうのです http://christianyates.com/category/subject/flex
85 : >>81 4.6 patchlevel 0で試したところ (abs($i)) は駄目ですが、 (abs(column(i))) でいけました。 ありがとうございました。
86 : 負の数をログスケールにしたいんですが... set logscale y set ytics format "-%g" plot 'hoge' using 1:(-$2) こんな感じでいけますが,x11などの場合で, いったん普通にプロットしたあと,キー入力でノーマルスケールと ログスケールを切り替えたいです。 bind で何とかならないかとも思ったのですが, plot文を変える必要があるため,特定の用途ならともかく, 汎用的にはやるのはなかなか難しそうです。 理想は set logscale y -10 とかやると,負数のログスケールになってくれたりするとありがたいんですが... ちなみにソースを見るとfabsを取っているようで,-10でも10でも同じ結果になります。
87 : 保守
88 : >>86 です。 その後ぱったりとレスが途絶えました。 僕は地雷を踏んでしまったのでしょうか??
89 : 地雷ではなく,単に高度なことを要求して, 誰も答えられないだけだと思われる.
90 : >>86 ソースいじれ。 もしくは、開発チームに参加しろ。
91 : 定番の、言い出しっぺの法則
92 : >>86 ttp://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gpinfo-2012.html#info-20120823 負の数に対数軸を適用したい、ということと、 キー入力でグラフの線形軸と対数軸を切り替えたい (x11)、 という 2 つの質問 (多分) がありました (86)。
93 : >>86 です。 竹野先生ありがとうございます。 ちょっと言葉足らずでしたが,やりたいことは,x11ウィンドウで 負数のデータをリニアスケールでプロットした後,キー入力で (符号を変えた)ログスケールとリニアスケールを交互に切り替えたい, というものでした。 正数のデータであればlキーやLキーで切り替えられますが, Yデータが全部負数の場合はエラーになったりします。 一部が負数の場合は正数部分のみが表示されます。 ちなみに,負数のデータというのは,たとえばあるデバイスを流れる 電流のようなものです。電流方向の定義というか電流計を接続する 向きによって同じものが正になったり負になったりします。 しかもバイポーラトランジスタのGummel plotのようにログスケールで あらわしたいこともよくあります。 gnuplotソース改変も試みましたが,自分のスキルではちょっと無理そうです。 他には,リニアスケールとログスケールを別ウィンドウでプロットし, gnuplot自身でなく別のツールで切り替えるというようなこともアイデアと しては考えています。
94 : 昔、aplacというspiceのパチもんみたいな回路シミュレータでやったな。 spiceでもグラフの切替はできるが、インタラクティブには出来なかった記憶が。 そもそもF77だったし。
95 : file='file1.txt' plot file u 1:2 log=0 bind 'ctrl-l' '\ if (log==1) \ unset logscale y; \ plot file u1:2; \ log=0; \ else \ set logscale y ; \ plot file u 1:(abs($2)); \ log=1'
96 : >>86 です。 >>95 さん いい感じです。変数を使ってbindにplot分を割り当てるのは盲点でした。 自分の目的としてはこれで何とかいけそうです。 ありがとうございました。
97 : 4.6 をインストールしたのだが、上手く動かない。多分4.6固有の問題じゃない気がする。 環境は、Windows7 home 64bit 今までは、4.0 を使っていて、.pltファイルをwgnuplot.exeに関係づけて、、それは正常に動いていた。 4.6は、ディフォルトで .plt に関係付けられているので今までどうりのファイルでいいのだろうと思い、試して見た。
98 : 取りあえず weight06_test.plt として以下のようなファイルを作った。 #cd "D:/USER/TOMURA/Data/体重/" set term postscript set title "Body Weight Change (2012/09/01-2013/08/31)" set xlabel "Date [month/day]" set xdata time set timefmt "%Y/%m/%d" set format x "%m/%d" set ylabel "Weight [kg]" set yrange [70:75] set grid xtics ytics back lw 2 set style line 1 lt 1 lw 1 pt 7 ps 0.5 set output 'weight06_test.ps' plot 'weight06.txt' using 1:2 with linesp notitle ls 1 これをダブルクリックしても weight06_test.ps は、出来上がらない。 4.0 では、出来上がっていたはず。
99 : 試しに同じフォルダに作ったバッチファイルに "C:\Program Files (x86)\gnuplot\bin\wgnuplot.exe" と書いて実行して weight06_test.plt の中身をコピペで与えると weight_test.ps が出来上がる。 #cd のコメントを削って生かしてやっても .plt ファイルのダブルクリックでは、正常に動かないが、 普通に wgnuplot を起動して cd からの weight06_test.plt の中身をコピペしてやると正常に動く。 (weight06_test.ps が出来上がる) 仕方ないので今は "C:\Program Files (x86)\gnuplot\bin\wgnuplot.exe" weight06_test.plt と書いたバッチファイルを作ってそれを実行している。
100read 1read
1read 100read TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
失業者はオープンソースのコードを書くか (151)
*BSD/ThinkPad (516)
ハッカーになりたいんですけど誰か教えて下さい (944)
■OpenBSD(VMS)の考察及炉理画像を貼り付けるスレ (121)
未だに10Base (119)
Sun Microsystems 最寄の親戚 (210)
--log9.info------------------
福田彩乃 (396)
辰巳啄郎が公式ブログでデマを拡散!! (291)
全裸男性ストリップに通う整形モンスター板野友美 (257)
【リアルバービー】ダコタ・ローズ【自称16歳】 (573)
研音25 (358)
島田紳助の復帰に賛成?反対? (965)
【鼻の穴】ローラ(笑)アンチスレ【●●】 (709)
■■■■ 杉本有美 Part 1 ■■■■ (252)
酒井法子の復帰と夜 (176)
オードリー【Part3186】 (901)
芸能人の身長を推察するスレ part98 (902)
【エヴァ】桜 稲垣早希 part437【ブログ旅】 (906)
サセコ栽培86 (452)
大桃美代子を必死な女1位にしよう (112)
二宮和也&佐々木希 32 (694)
\\\ 遠藤久美子(其の参拾七) \\\ (310)
--log55.com------------------
僕のヒーローアカデミア ネタバレスレ(ワッチョイ無し) Part174
【吾峠呼世晴】鬼滅の刃219斬【ありがとう】
【電子書籍】少年ジャンプ+ Part506【プラス】
【藤本タツキ】チェンソーマン15
ジャンプ打ち切りサバイバルレースPart2965
HUNTER×HUNTER強さ議論スレ part.1174
【電子書籍】少年ジャンプ+ Part507【プラス】
ジャンプ打ち切りサバイバルレースPart2966