>1 乙
>1 乙
>>2 gnuplot tips
wwwnucl.ph.tsukuba.ac.jp/~inakura/gnuplot/gnuplot.html
はリンク切れ。
うに板に即死判定あったっけ?
>>10 いや、それは即死じゃない
980越えて24時間レスがなかったら落ちるのは全板共通
即死ってのは立ったばかりのスレが引っかかるやつ
>>11 ありがと
じゃもう大丈夫か
>>14 <cachedir>WINDOWSTEMPDIR_FONTCONFIG_CACHE</cachedir>
<cachedir>~/.fontconfig</cachedir>
のことですか?
18 :
名無しさん@お腹いっぱい。:2011/10/07(金) 01:02:24.78
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 :
18:2011/10/07(金) 01:19:15.89
追記
Bx、By、Bzはいずれも倍精度実数です。
windowsのgnuplotのwxtでdashを使いたいんだけど無理なのかな?
アンチエイリアス機能が便利でそのままコピペして使いたい
他の方法でdash扱ってると面倒すぎる
>>20 set term wxt dashed
test
>>21 まさにすべて解決した気分。この先どうなるかわからないけど
非常に有難い
23 :
名無しさん@お腹いっぱい。:2011/11/11(金) 19:11:51.83
データのうち、一部分だけ別のpoint typeでプロットしたいのですができますか?
全ての点をlineでつなぎぐので別々にプロットするのはなしでお願いします。
24 :
名無しさん@お腹いっぱい。:2011/11/11(金) 19:51:25.96
すいません自己解決しました。
手元にgnuplot-4.4.4がないので,cvs版(4.5)でやってみました。
フォントを"GothicBBB-Medium-83pv-RKSJ-H" で指定して
shift-jisでやったところお望みに近いグラフができました。
ちなみにWindows XPです。
"GothicBBB-Medium-UniJIS-UTF8-H"でUTF-8で保存でもうまくいきました。
ghostscriptのバージョンは9.00です。
gnuplot-4.4.4をダウンロードしてやってみました。
私の環境ではEUCでは,postscriptファイルが壊れて見れませんでした。
"GothicBBB-Medium-83pv-RKSJ-H" shift-jis
"GothicBBB-Medium-UniJIS-UTF8-H" UTF-8
でうまくいきました。ghostscriptのバージョンなどにもよるかもしれませんね。
29 :
25:2011/11/20(日) 17:23:03.60
>>26-28 今まではGhostscript9.02を使っていたのですが、9.00を使ったところ問題なく出力されました。
ありがとうございました。
うお、すげえ
33 :
名無しさん@お腹いっぱい。:2011/12/05(月) 15:16:55.97
Windowsで特定のアプリケーションのCPU使用率と測定開始時間から終了時間までを測定しGnuplotを使いグラフにしたいのですがCPU使用率を計るにはどうしたらよろしいでしょうか?
gnuplot関係なさ杉ワラタwパフォーマンスカウンターでできるよ
35 :
名無しさん@お腹いっぱい。:2011/12/27(火) 20:09:13.44
gnuplot -p scriptfile.gp
なんて感じで、スクリプトファイルを読み込ませて起動したとします。
この時、scriptfileg.gp の中で gnuplot が読み込んだスクリプトファイルの名前を取得する事ってできるでしょうか?
36 :
名無しさん@お腹いっぱい。:2011/12/28(水) 02:55:50.93
俺は label とかに TeX 使いまくてたから、今だに plus 使ってるよ。。。
どうしたら良いのか。。。
>>36 epslatexとかどう?
gnuplot走らせるところから、出力されたTeXファイルにヘッダ加えてコンパイル、目的の形式に変換
までスクリプトで自動化すればそう面倒ではないけど
いや、4系の高機能に惹かれるのだが、これまでの資産のせいで乗り移れないってこと。
両方入れれば良いのだが、FreeBSDのポーツだと排他的だし。。。
何故pyxplotの話にならないのだろう(ぼそ)
グラフをプロットして出力するとデフォルトだと横長の画像が出力されるけど
これを4:3の大きさに指定したり、グラフの枠を指定して(できればピクセル単位で)出力ってできる?
x軸y軸で4:3を比率調整で作っても、それがx軸y1軸y2軸になるとy2軸側の文字が入って
画像としては4:3だけどグラフが4:3じゃなくなってしまう
出力された画像を4:3に加工するんじゃ駄目なの?
>>40 set term wxt size 600,800
とか。
詳しくは使用する terminal のヘルプを見てくれ。
理論上+∞に発散して閾値を超えると-∞から始まる曲線を描写しようと考えてるんだけど
実際のデータは無限大に行くわけでもなく、普段0.001程度の値が1まで行って-1まで
一気に落ちるって感じになってる。
こういうデータを無限に発散しているように見せるテクってある?
+∞から-∞の点を繋ぐ線を消したい
2本に分けて描く
(abs(1/x)<c)?(1/x):(0/0)
定数cとsampleの値を適当に調節する
>>45 無限に発散する点と普通に0を通過していく点があるから
2本に分けるにも結構難しかった
もっと効率よくできないものか
>>46 計算ソフトで出力されたデータをgnuplotに読み込ませて描写しているから
関数表現だと無理だと思う
それをプロットに応用できればいいのだが…
計算能力の問題で>普段0.001程度の値が1まで行って-1まで一気に落ちる
という結果になってる。
あくまで例で綺麗に1から-1まで一瞬に移動してくれるわけでもなく
理論上無限だけど、その点は効果が薄いために
他の発散は1から-1まで下がるのに対して0.05から-0.05に下がる点があったり
発散の度合いにも差があって、発散が弱いと普通に0を通っているのか発散しているのか見分けが難しい
>>47 >計算ソフトで出力されたデータをgnuplotに読み込ませて描写しているから
> 関数表現だと無理だと思う
Help ternaryをみると次のようなものがあるから,三項演算子とusingで
可能だと思います。
plot 'file' using 1:( $4<0 ? 1/0 : ($2+$3)/2 )
sin 関数のグラフで x 軸のメモリにπを入れる方法ってない?
>>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 でやることが考えられる。
>>50 turial.pdf ==> tutorial.pdf
52 :
49:2012/02/01(水) 04:48:42.27
>>50 ありがとう!
よく,emf ファイルで出力するからこの方法で大丈夫か
心配だったけど emf も enhance 付ければ出力できるね!
>>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 :
名無しさん@お腹いっぱい。:2012/02/10(金) 21:40:03.29
"Skipping data file with no valid points"のエラーってなんなんですか?
どんなコードもこれが出てきてしまってグラフィックができないです。
英語で書かれているとおりだよ。
無効なデータをスキップしましたってこと。
データのフォーマットがおかしいんじゃないの?
>>54 実行できないコードの一つでもさらせば,解答がつくかも
x データが 48〜120,218〜289 という具合に
データの塊が2つにわかれているんだけど,
これを省略線(波線2つ)を入れて省略するみたいに
表現できないかな?
>>58 ありがとう!
簡単にできるわけじゃないのねw.
とりあえず,じっくり読み考えながらやってみるわ.
60 :
名無しさん@お腹いっぱい。:2012/03/12(月) 15:18:16.63
gnuplot version 4.6 released!
61 :
名無しさん@お腹いっぱい。:2012/03/12(月) 19:26:06.94
↑
あららら・・・
インストール
変わっちゃったね?
>>62 うああ,かぶったm(__)m。
>>61 Windows版ですね。インストーラーがついてますよね。
でも,従来型のzipもあります。
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が使われている積極的な理由ってあるのかな?
とりあえずソースいじれば何とかなりそうだけど、
自分だけで使ってるわけじゃないので、それはやりたくないんだよな。
4.4以降でterminal windowsとかでemfを吐くと
それをパワポ上でグループ解除すると枠線らしきものが
かなりのでかさで現れて酷いことになる
wxtだと確かに綺麗だけど
ビットマップ扱いで拡大するとボヤけたりepsに変換すると汚くなる
ボヤけないようにemfで保存すると枠線が・・・となる
term windowsだと破線の太さをgnuplot上で太くできないから
仕方なくwxt使ってるんだけど
wxtで出力された見た目のままベクター形式で出力できないのだろうか
> wxtで出力された見た目のままベクター形式で出力できないのだろうか
pdfcairo
powerpointで読み込む方法があるのか知らんけど
67 :
名無しさん@お腹いっぱい。:2012/05/03(木) 18:01:13.39
ylabelを左じゃなくて、軸の上に表示したい
>>67 ylabel ではなく,label をグラフの外の座標に
設定すれば良いんじゃないだろうか?
gnuplot> set pm3d map
gnuplot> splot [:2*pi][:2*pi] sin(x)*cos(y)
ってやるとy軸の範囲が0~7になって上に空白が入っちゃうのってどうやって直したらいい?
ver4.6でグラフをemfにしてファイル出力してるんだけど
powerpoint上でグループ解除するとグラフには関係ない謎の透明で巨大な枠が
出現して、作業効率が下がるんだけどこれを解決できないだろうか
ver4.2ではこんなことはなかったんだが
仕様でも変わった・・・?
↓みたいなfor文において
plot for [2:3] "hoge.dat" using 1:i
ここでusingにabsなどの処理をしたいときはどうやればいいですか?
using 1:abs(i) としたら案の定駄目でした
gnuplot> q=1.60e-19
gnuplot> print q**16
1.84467440737095e-301
gnuplot> print q**20
0.0
上記のように、q=1.60e-19の累乗が大きい値になると、計算結果が0.0になってしまいます。
どうすれば、正確な値がでてきますか?
(次に続く)
オーバーフロー?
この場合アンダーフローじゃね?
そっか、マイナスついていたか。
確かにアンダーフローだな。
gnuplotの問題ってわけじゃないね。
何事にも限りがあるってことだ
doubleが64ビットより多い処理系でビルドすればましにはなるかな。
いずれにしろ限りはあるが
79 :
名無しさん@お腹いっぱい。:2012/06/02(土) 15:38:37.78
set xtics (pi)にした時、横軸に3.14,6.28,…じゃなくて
π,2π,…ってするにはどうしたらいいの?
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 \
)
82 :
名無しさん@お腹いっぱい。:2012/06/15(金) 13:18:50.34
1つのグラフに対して上と下のx軸で別の単位を使うことはできますか?
可視光線の透過スペクトルで下に波長(nm),上に波数(/cm)を表示したいです.
下軸の波長を100程度の等間隔にして,上に波数(=10^7/波長)の目盛りを付けられませんか
set x2label
set x2tics nomirror
plot hoge axes x2y1
84 :
82:2012/06/16(土) 13:21:48.76
85 :
73:2012/06/22(金) 01:40:41.27
>>81 4.6 patchlevel 0で試したところ (abs($i)) は駄目ですが、 (abs(column(i))) でいけました。
ありがとうございました。
負の数をログスケールにしたいんですが...
set logscale y
set ytics format "-%g"
plot 'hoge' using 1:(-$2)
こんな感じでいけますが,x11などの場合で,
いったん普通にプロットしたあと,キー入力でノーマルスケールと
ログスケールを切り替えたいです。
bind で何とかならないかとも思ったのですが,
plot文を変える必要があるため,特定の用途ならともかく,
汎用的にはやるのはなかなか難しそうです。
理想は
set logscale y -10
とかやると,負数のログスケールになってくれたりするとありがたいんですが...
ちなみにソースを見るとfabsを取っているようで,-10でも10でも同じ結果になります。
保守
88 :
86:2012/08/18(土) 21:27:55.95
>>86です。
その後ぱったりとレスが途絶えました。
僕は地雷を踏んでしまったのでしょうか??
地雷ではなく,単に高度なことを要求して,
誰も答えられないだけだと思われる.
>>86 ソースいじれ。
もしくは、開発チームに参加しろ。
定番の、言い出しっぺの法則
93 :
86:2012/08/26(日) 16:38:04.67
>>86です。
竹野先生ありがとうございます。
ちょっと言葉足らずでしたが,やりたいことは,x11ウィンドウで
負数のデータをリニアスケールでプロットした後,キー入力で
(符号を変えた)ログスケールとリニアスケールを交互に切り替えたい,
というものでした。
正数のデータであればlキーやLキーで切り替えられますが,
Yデータが全部負数の場合はエラーになったりします。
一部が負数の場合は正数部分のみが表示されます。
ちなみに,負数のデータというのは,たとえばあるデバイスを流れる
電流のようなものです。電流方向の定義というか電流計を接続する
向きによって同じものが正になったり負になったりします。
しかもバイポーラトランジスタのGummel plotのようにログスケールで
あらわしたいこともよくあります。
gnuplotソース改変も試みましたが,自分のスキルではちょっと無理そうです。
他には,リニアスケールとログスケールを別ウィンドウでプロットし,
gnuplot自身でなく別のツールで切り替えるというようなこともアイデアと
しては考えています。
昔、aplacというspiceのパチもんみたいな回路シミュレータでやったな。
spiceでもグラフの切替はできるが、インタラクティブには出来なかった記憶が。
そもそもF77だったし。
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:2012/09/01(土) 23:36:40.90
>>86です。
>>95さん
いい感じです。変数を使ってbindにplot分を割り当てるのは盲点でした。
自分の目的としてはこれで何とかいけそうです。
ありがとうございました。
4.6 をインストールしたのだが、上手く動かない。多分4.6固有の問題じゃない気がする。
環境は、Windows7 home 64bit
今までは、4.0 を使っていて、.pltファイルをwgnuplot.exeに関係づけて、、それは正常に動いていた。
4.6は、ディフォルトで .plt に関係付けられているので今までどうりのファイルでいいのだろうと思い、試して見た。
取りあえず 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 では、出来上がっていたはず。
試しに同じフォルダに作ったバッチファイルに
"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
と書いたバッチファイルを作ってそれを実行している。
何とか今まで通りに .plt ファイルをダブルクリックしただけで済ませたいのだが、そういう使い方が間違っているのだろうか?
昔、plot してから、 set output あたりをを弄ってやると正常に出力されるようなこと見た覚えがあるのだが、自力で見つけられない。
そういうわけで教えて下さい。(Windows の質問はひょっとするとスレ違いでしょうか?)
gnuplot で bash の alias のように
長ったらしいコマンドを短く定義したいのですが,
そういうことは gnuplot でできないでしょうか?
特に出力先を変える時の設定が面倒なので….
今試せないけどマクロ置換は使えないの?
>>102 まさにその機能です!
ありがとうございます.
gnuplot で関数やらサブルーチンやらエイリアスで
ググっても思った内容がなかなか出て来なかったもので….
マクロ置換って言うんですね.
助かりました.
>>97 -100
set term post
set output 'testps.ps'
test
でgnuplot 4.7で試したが,ダブルクリックでファイルができたよ。
いまgnuplot使ってデータ点と関数のフィッティングやってるんですけど、フィッティングの際に各データテント関数の値との相対誤差とか出せませんか?
教えていt抱けると非常に助かります
>>106 わかりにくい日本語で済みませんでした。
今(x_n,y_n) n=1〜1000のデータ点を用意して、とある関数(たとえばy=a*x+b)とfitコマンドを使ってgnuplotでフィッティングしています。
その結果、データ点と会うように係数a,bが調整された関数を得ました。
この関数にx_nを代入した値と、おおもとの(x_n,y_n)との間の相対誤差を知りたいのですが、いちいち計算せずにgnuplot上でどうにかできないかという質問です。
x_n:1列目,y_n:2列目のデータが並んでいると仮定して書くけど、
f(x)=a*x+b
fit f(x) なんちゃら using 1:2 via a,b
ここまではできたということだよね?
「相対誤差を知りたい」って相対誤差をプロットしたいってことかな?
相対誤差の定義もいろいろと有ると思うけど,こんなんでどうでしょう?
plot なんちゃら using 1:(($2-f($1))/$2)
set formatについて質問です。
例えば、x軸に80 90 100という値があるとして、
その表示を8.0x10^1 9.0x10^1 10x10^1とすることは出来ますか?
仮数部と指数部があるとしたら、指数部を固定したいということになります。
よくある方法で、set format "%2.1l x 10^{%L}"とすると
8.0x10^1 9.0x10^1 1.0x10^2となってしまいます。
>>110 10x10^1 って指数表記にする意味ってあるの?
もし,関数ではなくデータのプロットで
表示している数値の底上げをしたいのであれば,
軸の脇に "x 10" とか書いて,数値に対して
using ($1/10):$2 とかすればいいのでは?
俺のレベルでアドバイスできるのはそれくらい.
112 :
111:2012/10/09(火) 22:16:12.49
訂正
× using ($1/10):$2
○ using ($1/10):2
>>111-112 レスありがとうございます。
残念ながらデータのプロットではなく関数です・・・
一応、関数に10の累乗をかけて整数にしておいて、
目盛りやラベルで誤魔化そうとも思ったのですが、
あまりかっこ良くないなぁと。
114 :
名無しさん@お腹いっぱい。:2012/10/23(火) 19:45:17.38
ファイルに保存された3次元のデータを描画したいと考えています.
これを普通に描画すると,すべての点が赤で描画されます.
これをzの値で色を変えるにはどうすればよいのでしょうか?
カラーマップを使うと,点ではなく面でベタ塗りされてしまうのです.
私がやりたいのは,こうではなくて,点の色を変えたいのです.
以上,お願いします.
>>115 ありがとうございます.
これで何とかなりそうです.
手元に10000行1列の各数字が0 ~ 20範囲のデータがあります。
横軸に 0~5 5~10 10~15 15~20の各範囲、縦軸にそれぞれの範囲内にある数の個数の4本の棒グラフを作成したいのですが、gnuplotで可能でしょうか?
それとも何らかの方法でカウント数をソートしてから読み込むしかないのでしょうか?
それってひとことで言うとヒストグラムのことか?
直接ヒストグラムを描くのは無理だけど,
やりようはあるからあとはググれ。
>>118 そうです、ヒストグラムです。
やりようがわからないのです。方針だけでいいので教えて頂けませんか。
つ Google検索 「gnuplot ヒストグラム」
俺だったら直接描く方法がないと分かった時点でカウントするプログラム書いてるけど
gnuplot って基本グラフ描画ツールなんだよね。
統計とか計算はおまけみたいなもので…。
122 :
117:2012/11/01(木) 14:25:34.39
ぐぐったんですけど、結局良くわからないですね…
gnupotは結構隠しコマンド的なのがあるからできるかもなどと聞いたのですが。
とりあえずカウントするプログラム別に作ることにします。
ありがとうございました。
123 :
名無しさん@お腹いっぱい。:2012/11/02(金) 23:49:11.73
ヒストグラムを生成しようとして以下の様に入力しました。
n=20 #number of intervals
max=90. #max value
min=-90. #min value
width=(max-min)/n
hist(x,width)=width*floor(x/width)+width/2.0
set term postscript eps enhanced color
set output "histogram.eps"
set xrange [min:max]
set yrange [0:]
set mxtics 6
set boxwidth width*0.9
set style fill solid 0.5
set tics out nomirror
plot "dec.dat" u (hist($1,width)):(1.0) smooth freq w histeps
この様にhistepsで出力すると綺麗なヒストグラムが得られたのですが、最後の行を
plot "dec.dat" u (hist($1,width)):(1.0):(0.5) with yerrorbars
とすると高さ1のところにプロットが数個現れるだけで上手くエラーバー付きのプロットができません。
どなたか原因が分かる方いませんでしょうか。
ヒストグラムにエラーバーとは何がしたいかわかんないけど、
うちの環境では普通にエラーバー出るよ。
バージョン古かったりしない?
125 :
名無しさん@お腹いっぱい。:2012/11/08(木) 18:09:34.09
x軸の名前の位置を調整したいのですがうまく出来ません。例えばx方向に1、y方向に2だけずらしたい時には
set xlabel "x-Name" 1.0,2.0 font "Helvetica,20"
とすれば良いと聞いたのですがエラーが出てしまいます。
使用しているバージョンはgnuplot4.7です。何か方法があったら教えて下さい。
>125
使っているOSや エラーの内容を書かないのは 何かの策略ですか
set xlabel "x-Name" offset 1.0, 2.0 font "..."
と offset を書けばいいのでは
127 :
名無しさん@お腹いっぱい。:2012/11/08(木) 23:35:53.26
>>126 お返事ありがとうございます、お陰でできました!
すみません、うっかりしていて書き忘れてしまいました。
Mac OS XでX11を使っています。
offset と書かく必要があったとは。調べたら
>>125の表記をしているところが多かったもので…
versionによる違いなのでしょうか。
どちらにしろ無事できたのでよかったです、大変助かりました。
WindowsでXming起動してからputtyでLinuxにsshしてXを飛ばしてるんですが、
gnuplotのX画面をAlt+PrintScreenでキャプチャしてPowerpointへコピペするのが
癖になってしまいました。ベクトル画像じゃなくなるけど、サクッとコピペできるのはすごい楽。
ただ唯一の不満がgnuplotのX画面に枠やタイトルバーが付いている点で、
今でJTrimに毎回削ってます(Powerpoint2010のトリミングは使いづらいので)。
もっと効率良いやりかたないでしょうか。ちょっとスレチかもしれないですが、
自分みたいな使い方してる人って結構いそうな気がするので、お尋ねしました。
>>128 素直に,gnuplotにpngで保存させろ
wxtならcopy to clipboardボタンがあるけど、機能するかどうかはXサーバ次第かな
>>129 それが一手間で面倒で・・・
普段は set term x11 で作業して、よしこれでOKと思ったら
set term png してset output "hoge.png"で保存してWindowsに転送して・・・
作業ディレクトリを Samba ディレクトリにしてしまえばいい
リリースノートのファイル見てたら,インタラクティブなターミナルとしては
前はX11がオススメだったけど,今はwxtとかqtがナイスだよ,って書いてある。
自分はwxtとかqtとか言われてもナニソレなんだけど,X11にくらべて何が良くなるの?
ちょっとぐぐったら表示がキレイになることはわかったけど,インタラクティブな辺で
いいこと(たとえばレンジの指定がインタラクティブにできるとか)があれば,
がんばってインストールしてみようかなと思う。
どんな化石みたいな環境使ってるのか知らないが、たいがい人に聞くより自分で試した方が早いぞ
> レンジの指定がインタラクティブにできる
マウスホイールを使ってできる
でも最近のバージョンなら多分wxt以外でもできると思う
最近の Linux ディストリビューションの gnuplot が
採用しているのは wxt なのでは?
その状態で x11 にすると萎える。
136 :
133:2012/12/09(日) 17:25:46.98
環境は仕事で使ってるSoralisの古いやつ。
ライブラリとかも古いままでインストールが大変だからまず聞いてみた。
やる価値あるんなら頑張ってみようかと。
近くにWindowsPCくらいあるだろうから、そこで試してみればいいんじゃね?
zip版ならインストールする必要もないし
Solarisとか、いつまで死んだ子の歳を数えてるんだ…
複雑な事しない実験系なら
N88BASICとか普通に現役だからなぁ・・・
Solarisみたいな”新しい”環境はまだまだ消えないだろう
140 :
名無しさん@お腹いっぱい。:2013/01/10(木) 19:01:23.74
区間[0:2*pi]でsin(x),
区間[-2*pi:0]でcos(x),
区間[-2*pi:2*pi]でtan(x)を描画するには,
どうすればいいですか?
カンマ区切りやreplotでは範囲が指定できないので困っています.
こういうことかな?
>plot ( 0<x && x<2*pi ? sin(x) : 1/0) w l,\
> ( -2*pi<x && x<0 ? cos(x) : 1/0) w l,\
> ( -2*pi<x && x<2*pi ? tan(x) : 1/0) w l
>>141 できました.
三項演算子とは盲点でした.
ありがとうございます.
ところで,
1/0はなんですか?
help嫁
pm3d mapで描画したカラーマップ上に、
境界線をわかりやすくするためにx軸に垂直な直線(例 x=1)を入れたいです
1. noheadのarrowで書こうとしたが、カラーマップの下に入って見えない
2. 以下の通り媒介変数表示を使って書こうとしたが、表示されない
set parametric
splot 1,u,0 ←3次元上には書けてる
set pm3d
replot ←同上
set pm3d map
replot ←グラフ上に何も表示されない
pm3d map上にx=1等の直線を描画するために
何かいい方法はありませんでしょうか、知恵をおかしくださいmm
描画の順番を入れ替える.
146 :
144:2013/01/11(金) 08:13:08.53
1. だと、矢印はset arrowで設定なので、plot文より前に書かざるをえない
2. では、順序以前に直線描画がまったくできない
んですよね。他にx=constの線を書く方法ってないでしょうか
147 :
144:2013/01/11(金) 12:13:21.41
いろいろ試行錯誤して自己解決しました。
具体的には、
1.set pm3dとset view mapにしとく。
2.カラーマップはwith pm3dで描く。
3.線は外部ファイルに準備した二次元テーブルから引っ張ってきて引く。
という、結局ゴリ押しなんですが。
なんというロングパス
>> 634とか何年後だよw
151 :
名無しさん@お腹いっぱい。:2013/03/07(木) 19:06:00.99
最近では,オプション front が効くはず.
set arrow .... front
いまさら gnuplot+ のパッケージ @ FreeBSD がなくなったと
呻いてる人がいる…
>>131 遅レスで見てないかもだけど、
~/.gnuplotにキーバインドを書いとけばwindow上でkeyを押すだけで保存できる
.gnuplot
---------
# for v4.6 or later
bind s "\
set term postscript eps enhanced color;\
now=system(\"date +'%Y%m%d-%k%M%S'\");\
set output sprintf(\"%s.eps\",now);\
rep; \
unset output;\
set term qt; \
rep"
----------
ここまで。
これで20130312-001221.epsで保存される。
参考までに。
154 :
131:2013/03/27(水) 22:01:33.45
>>153 おお、レスがあるとは!
これはなかなか便利ですね。どうもありがとうございます。
term qtてビルド時にenableしないと使えないのね
どう良いのこれ?
最近のgnuplotはterm pngで直接png出力できるのね
これでepsで出してconvertコマンドかけるとかやらないで済む
さいきん・・・?
年取ってくると5〜10年くらいは完全に「最近」扱いだよな
159 :
名無しさん@お腹いっぱい。:2013/04/02(火) 12:39:07.38
下のようなe-100より小さいような値をプロットすると普通に1くらいのでかい値が表示されるんですが、どうすればこれば防げますか?
0.000000000000E+00
0.000000000000E+00
0.000000000000E+00
0.000000000000E+00
0.000000000000E+00
0.000000000000E+00
0.000000000000E+00
0.000000000000E+00
0.435473392210-201
0.156895824551-183
0.124360891949-166
0.386958606043-150
0.157760811076-133
0.118966023624-117
まさかintelのバク付x87 CPU使ってない?
IEEE754コンプラ試験のparanoia.cで試してみそ。
SPARCやMIPS, HP-PAでも成るの?
>>158 新しいことを覚えたくなくなるらしいね
体が拒否るんだろうか
162 :
名無しさん@お腹いっぱい。:2013/04/05(金) 19:02:31.90
4列のデータからそれぞれ,x座標,y座標,点の大きさ,透過度を読み取って
円をプロットしたいのですが,どうやればよいか教えてください.
やりたいことは,これ↓
"Trace of unconstrained optimization with trust-region method"
http://gnuplot.sourceforge.net/demo_4.6/circles.html にすごく近いのですが,加えて,透過度をデータから読み取ってプロットしたいです.
『solid 0.15』→『solid variable』に変えて
plot 'file' using 1:2:3:4 with circles lc rgb "blue" fs transparent solid variable noborder
としてみましたが,
warning: This plot style does not work with 4 cols. Setting to yerrorbars
と言われてしまいます.
また,"with circles"の場合にはパックマン状の扇形を描くための開始,終了の角度を
指定にするために4,5カラム目が使われるらしいので,
plot 'file' using 1:2:3:(0):(360):4 with circles lc rgb "blue" fs transparent solid variable noborder
と,あえて角度指定した後に透過度として指定したい列番号を書いても,同様の警告が出ます.
transparent solid <density> を変数で渡すことは現状できないみたいだな
色を渡すことはできるから、重なりを考えなければ色でそれっぽく見せることはできそうだが
164 :
名無しさん@お腹いっぱい。:2013/04/19(金) 17:41:48.39
保守
\ で改行して複数行書くと、履歴にはそれぞれの行ごとに
書かれるのですが、\で改行した場合は一つのコマンドとして
履歴に認識させる方法はないでしょうか?
167 :
名無しさん@お腹いっぱい。:2013/07/30(火) NY:AN:NY.AN
C言語のプラグラムからパイプしてgnuplotでグラフ書きたいのだけどエラーでる。
No usable data in this plot to auto-scale axis range
All points x value undefined
主導でプロットさせると問題ないのだけど、どうしてこうなるのか分からない
エスパー募集
出力したデータを公開するか、自分でよく見ることだ。
パイプを通さずにファイルに入れて、それ使ったらどうなる?
あるいはそれを手動入力のつもりでコピペ入力したらどうなる?
手動入力だとうまくいきます
Cから出力はあきらめてスクリプトでなんとかしようかとおもいます
172 :
名無しさん@お腹いっぱい。:2013/08/29(木) NY:AN:NY.AN
netCDFのデータって変換せずにプロットできないのですか?
173 :
名無しさん@お腹いっぱい。:2013/08/30(金) NY:AN:NY.AN
あるいはHDF5
そういうのっていわゆるマスデータなんじゃないの?
gnuplotで表示するのがそもそも間違いなんじゃ
おっしゃる通りなんだけど、開発段階とかでぱっとプロットしたい時にgnuplotだと楽じゃん。
gnuplot用のアウトプットルーチンを書けばいいんだけど、コード無駄に長くなるし、そのままプロットできればいいかなと思ってさ
176 :
名無しさん@お腹いっぱい。:2013/09/13(金) 10:55:17.68
ファイルを読み込みベクトル場を表示させているのですが、ベクトルの大きさに応じて矢印の色を変化させることは可能でしょうか。
>>152 >いまさら gnuplot+ のパッケージ @ FreeBSD がなくなったと
>呻いてる人がいる…
俺も嘆いている。だって、これまでに作ったファイルが使えなくなるのは痛すぎる。
+ で出来て 4 で出来ないこといっぱいあるじゃん。
gnuplot+なんてあったんだ、知らなかった
でも更新されてないっぽいね
4は未対応か・・・
EUC日本語でTeXにグラフ貼付けれるのは、どっちのgnuplot?
184 :
名無しさん@お腹いっぱい。:2013/09/17(火) 02:11:41.43
eps にすればどっちも可能。普通 eps にするだろ?
どっちかは、日本語が化けて困ったんだよなー
日本語入り EPS を gnuplot でって話?
だったら、plus かも。と言うか plus なら確実に出来る。実際よくやる。 4 で出来るか知らない。
今、論文をwordで書いてて、あまりにもExcelが吐き出すグラフが汚い(そして面倒)。
で、最終的にgnuplotで出力させてるんだけど、方法ってepsをまず作ってemfをgsview+pstoeditで作ることになるよね?
グラフのxlabelやylabelの途中でフォントを変えたい場合って
set xlabel font "Times New Roman Bold Italic,20"
set xlabel "x {/Times-Roman [mm]}"
みたいな感じになると思うんだけど(xだけTimesの太い斜体で[mm]はTimesのノーマルフォントを期待)、
{/Times-Roman [mm]}の部分がepsだと普通にTimesで出力されるのに、emfにするとHelveticaらしきフォントになってしまう。
誰かそういう場合にどうしたらいいか知ってる人います?
またはepsをそのままの形で(ラスタライズしないで)、wordのファイルに張り付ける方法ってありますかね?
>>187 求める答えとは違うと思うが、Mac版Word使うとEPSがそのまま綺麗に貼れる。手書きのEPSとかでも可。
内部的にEPSの表示をOS X標準のPreviewと同じ方法を使うからと思われ。
Display PostScriptだったNeXTSTEPの子孫だからね...
Wordで書くんなら、
Excelのグラフを調教する方向の方がよほど楽で綺麗にできると思うんだが。
gnuplot並みに仕上がる?
>>188 今研究室のメインOSがWindowsでマック持ってないから、ちょっと厳しいです・・・
(apple嫌いってのもある)
>>189 Excelのグラフってデータ変わるたびに新しく書かなきゃいけないので面倒だし(Excelが吐くグラフって綺麗?)、
ファイルをすべてCSVで管理したいからちょっと・・・
ホントはLaTeXを使ってもOKっていうふうに教授が言ってくれればいいんだけど、
教授が相当なMicrosoft厨なので、word以外はダメとか何とか・・・。
おまけに論文を出す学会から指定されたテンプレートがdocファイルとかマジ勘弁な状態。
あー、ホントはwordで下書きしてレイアウトはLaTeXってのがすごい捗るのに!しかも綺麗に書けるし・・・orz
最後にあともう一個だけ質問なんですけど、
gnuplotに吐かせたepsのグラフをgsview+pstoeditでemfにしてwordに張り付けた際に、
docファイルを編集中の時は問題ないのにwordからそのままpdfに変換するとemfのグラフに謎の線が追加されるんだけど、
この症状って誰かなってる人います?
ついでにウェブにdocファイルをうpしてメールでpdfを受け取れるサービスにぶち込むと普通に問題なく出てくる・・・
wordのバグ?
すんません、ちょっとスレチ気味ですが、ほかに質問できるところも無いので・・・
>>187でつ。自己解決しました。
どうやらTimes-Romanがフォント指定としてそのままepsファイルに書かれるけど(GhostScriptからは一応Times-Roman系のフォントとして扱われるらしい)、emfに変換するときにそんなものは無いと判断されるのが原因の模様。
一応解決法を(悩んでる人なんていねーよとか思いながら)。
途中でフォントを変える場合、次のように全部{/TimesNewRoman <文字>}と指定。
set xlabel font "Times New Roman Bold Italic,20"
set xlabel "x {/TimesNewRoman [mm]}"
次にpstoeditをダウンロードして適当にインストール、環境変数も通す。で、windows用のバッチを作る(タコいのはご愛嬌・・・windowsのバッチ初めてなのでorz)。
@echo off
set ifilename=%1
set ofilename=%2
type nul > %ofilename%
setlocal ENABLEDELAYEDEXPANSION
for /f "delims=" %%A in (%1) do (
set line=%%A
echo !line:TimesNewRoman=Times New Roman!>>out001.eps
)
pstoedit -xscale 2 -yscale 2 -f emf out001.eps %ofilename%
del out001.eps
endlocal
第一引数にinput、第二引数にoutputを書いてバッチ実行。out001.epsがそのフォルダにあるとうまく動かない。
これで全部のTimesNewRomanって書かれたフォントがTimes New Romanに置き換わるので、問題ない・・・と思いたい。
wordにemfを張ってpdf化するとおかしな表示になるのはまだ解決してませんが、それは純正使わなきゃいいだけの話。
とりあえず一か月以上ずっと困ってたことは解決したので、スレのみなさんありがとうございました。
また何かあったらその時によろしくお願いします。
wordってpsかpdfの図貼り付けられなかったっけ?
194 :
192:2013/09/21(土) 17:30:58.69
>>193 やってみました。
PSの図は張り付けられるっぽいけど、文字がアウトライン化されて太るみたいです・・・
PDFは厳しかったような・・・
うろおぼえだけど、オブジェクトで挿入できなかったかな?
wordに貼る場合、wgnuplotで表示しているのをコピペで貼ってる。
ビットマップだから印刷すると汚くなるけど、どうせディスプレイで見るだけだし
windowsターミナルからコピペすればメタファイル形式になるからガタつかない
windowsターミナル自体の表示品質はさておき
4.6.3でemfターミナル使えば良いんでないの?
199 :
198:2013/09/22(日) 21:54:47.94
200 :
192:2013/09/23(月) 01:02:24.88
>>199 情報あざっす。
emfターミナルは使おうとしていたら、白抜きのpoint typeの種類があまり無くてちょっと敬遠ぎみです。
ただ、もう5つのデータとかを一つのグラフに描くことは無いだろうから、この先は直接emfでもいいのかな。
あと、もう一つemfターミナル使わない理由があって、
ターミナル使ったら、何故かpoint typeを白丸にしたときだけ、
プロット点にline widthが適用されない。これってバグかな?
俺のPC以外の環境で再現しますか?
つまり、line widthがホントにlineにしか適用されない。
windows版でもfedora版でも同じ状態になっちゃうんだけど、解決法がよく分からない・・・orz
w pにしようがw lpにしようがpoint typeに白丸を適用したら白丸の点にだけ太さの設定が適用されないんだ。
他の点、例えば四角とかひし形とかは適用されるのに・・・。
なんか質問ばっかで申し訳ないです。
研究室に行かないと分からないけど、たぶん、バージョンは最新(=4.6.3)だと思うんだけど・・・
そして今気づいたことがある。
epsからemfにしたら線の太さが適用されてないじゃん!?
とりあえず、あまり線の太さが問題になることはないだろうから、ここではシカトしとくww
WordじゃなくてPowerPointだったけど、gnuplotのグラフ入れるときにはGSviewで変換してたわ
どうせ表示するプロジェクターの解像度なんてたかが知れてるから、pngにしちゃってたけど
>>176 iozone のファイルからグラフが生成されない問題
自己解決しました。
*.pl のソースの行末がCRLFになっているのがエラーの原因なので
nkf -Lu で行末コードを変換したら、正常にグラフが生成されるようになりました。
gnuplot ねたじゃない感じですいませんでした。
203 :
198:2013/09/26(木) 01:04:04.90
>>200 確かに白丸だけ千の太さが反映されないね。
線ばっかりで点はあまり使わないから気がつかんかった。
204 :
192:2013/09/26(木) 07:43:05.36
>>203 やっぱり、再現性はあるのか・・・
白丸はプロット点でよく使うんでちょっと致命的なんですよね・・・
まあ、四角とかダイヤとかをその代わりに使えばいいってだけの話でもあるんだけど・・・・・
4.6.4出たね。
ところで以前に竹の先生のページで紹介されてたCVS版の機能で、
名前付きデータブロックって有ったと思うんだけど、
リリース版には入ってないんだっけ?
4.6.4のRelease Notesが見れん・・・とりあえず入れたけど
>>205 入ってないぽいっすね。一年前の機能なのに・・・
CVS版はあまりチェックしてないけど乗り換えたほうがいいのかなぁ
207 :
名無しさん@お腹いっぱい。:2013/10/16(水) 06:48:53.83
termが x11 enhanced の状態でシンボルフォントを使うにはどうすればいいですか?
よくやる {/Symbol W} などは postscript enhanced 以外のtermで使うと、
以下のようにフォントが見つからないエラーになってしまいます。
gdImageStringFT: Could not find/open font while printing string W with font Symbol
OSはLinuxのFedora14やCentOS6.2です。
環境依存の部分もあるかもしれませんが、アドバイス頂けないでしょうか?
208 :
207:2013/10/16(水) 07:00:29.41
wine-symbol-fontsというパッケージがあったのでyumで入れてみると
/usr/share/fonts/wine-symbol-fonts/ に symbol.ttf が現れ、
{/symbol W} とすると x11 enhanced でも表示されました。
見た目は {/Symbol W} と変わらなさそうです。
postscriptでSymbolフォントが使えているので、どこかに Symbol.ttf が
あるかと思い探しましたが見つかりませんでした。うーん、よく分かりません。
# っていうか、wineってあのWine Linuxのことかな?ずいぶん懐かしいような…
209 :
205:2013/10/16(水) 22:08:38.83
>>206 便利そうな機能だから使って見たかったんだけどなぁ。4.8になるまでおあずけなのかな。
>>207 フォントの事はよく知らないけど、postscriptで使ってるのはTTF形式でないのでは?
あと、多分wineはwindowsの.exeを実行させる奴だと思うよ。
210 :
207:2013/10/17(木) 01:25:01.30
>>209 レスありがとうございます。
おっしゃる通り、postscriptのフォントは別の形式なのかもしれません。
何もインストールせずにデフォルト環境でSymbolフォントが見れたらいいなと
思ってたんですが、そうもいかないようです。
このスレの人達は毎回epsに出力してから確認してる人が多いのかな?
自分はeps経由は一手間かかるのが嫌なのであまり使ってません。
wineはそういえば聞いたことありますね。ということは、Windowsのexeファイルを
実行するときに使われるフォントということかな。
最近の 4系は plus と同じこと出来る様になったでしょうか?
全然でしょ
だから今にplusユーザ多い
残念。あんな便利な機能なんで取り込まないんだ。
まだまだ plus 継続だな。
俺は+は使ったことないから知らんけど、
それほど便利なんだったら本家に取り込んでもらう努力くらいしたらいいのでは?
え!? plus を使ったことないだって?
まぁ、でも、文系ならそう言う人もいますかね。
で、努力はしたの?
まぁ、文系の方達は4系、理系はプラス、と住み分ければ良いと思いますよ。
それは平和そうですね
plus の利点ってなに?
220 :
名無しさん@お腹いっぱい。:2013/10/24(木) 03:30:20.34
色々あるけど1つだけ上げると、軸のラベルや線のタイトルに、ルートやべき乗が簡単に
書ける。
set xlabel '$\sqrt{\alpha}$ [kg/m$^3$]' とか。
terminal を latex や epslatex にしてもできるよね。
どうせlatexの文書に埋め込むんだから、これでいいわけで。
あ、自称「理系」さんは住み分けてるので、試してくれなくていいですよ。
222 :
名無しさん@お腹いっぱい。:2013/10/24(木) 13:32:39.14
impress に貼ったりもしますよ。
あ、impress と言うのはパワーポイントの様なソフトです。
文系の方々のために念のため。
223 :
名無しさん@お腹いっぱい。:2013/10/24(木) 15:09:09.67
set term tikzで吐かせたのもLaTeXには便利ですね。
224 :
名無しさん@お腹いっぱい。:2013/10/24(木) 15:34:11.97
自称「理系」さんは、beamerとか使え^Hわないんですね。
もっと洗練された powerdot なんてのもありますが、文系の方々には必要ないですね。
R言語でもgnuplotと同じ事できるのか?
228 :
名無しさん@お腹いっぱい。:2013/10/24(木) 18:42:44.40
そろそろうぜーぞ
beamerはともかく、powerdotなんて開発止まってねーか?
ともかく、LaTeXラブなら4、
LaTeXとか死んでも経由したくないけどLaTeX風ラベルを書きたいなら+、で決着な
その決着に賛成。
でも、グラフ作るのに gnuplot で完結しなくても不満を感じないってとっても不思議。
たぶん、latex 経由はそう頻繁には必要ない業界なのでしょうね。
プレゼン用のグラフはラベル抜きで作ってプレゼンソフト上でラベル書くなあ
文字サイズの調整がしやすいから
emacs hoge.gp -> gnuplot hoge.gp で論文にもプレゼンにもそのまま使える eps が作れなかったら、嫌過ぎるけどな。
不二ラテックス
234 :
名無しさん@お腹いっぱい。:2013/10/25(金) 06:13:21.75
>>233 plus 使ったら良いのに。
って言うか、今はどうしてるの?
latex 経由とか2度手間な事してるの?
236 :
名無しさん@お腹いっぱい。:2013/10/25(金) 14:36:51.25
添字とギリシャ文字だけなんだよね。。。しかも、ギリシャ文字はコード番号を打ち込みと言う不便さ。
うちの業界だとギリシャ文字、添字、分数、根号は必須なので plus 一択。
例えば set ylabel '$\Psi(\vec{r})$ [1/fm$^{\frac{32}}$] ' とか。
誰も本家に入れようとしないんだから、そういうのを欲しがる業界はごく一部なんだろうねえ
かくいう俺も欲しいとは思わん
俺もイランw
239 :
名無しさん@お腹いっぱい。:2013/10/26(土) 09:08:43.78
グラフ自体は要るの?
>>234 MS Officeの数式がマシになってきたので、Officeで完結するようにしてる
必要だったらgnuplotで出した画像の上に数式のテキストを上書きしてウンヌン・・・
ダサすぎだろうけど、そういうことする頻度も低いんでまぁいいかなと現状維持
>237
あるに越したことはないとは思うが
確かに言われてみると軸ラベル・タイトルあたりだと
数式そのものを書く需要はあまりなさそうな気はする
ギリシャ文字くらいは欲しいけど
ギリシャ文字なら,
set terminal png enhanced
xlabel '{/Symbol a}'
とかやれば書けるんじゃなかったっけ?
実験データのプレゼン用のグラフはピーク名とか入れる必要あったから、全部Illustratorで手修正してたなぁ
フォント統一したいからラベルもそのとき入れてた
日々大量に生まれる実験データ自体はC++で自作したプログラムで処理して、ピークにピーク位置の値を
labelで流し込んだgnuplotのバッチ自動生成→systemでgnuplot呼び出しでグラフ化してた
多少見栄えが悪いけど人に見せるものじゃないし
やはり、皆さん、gnuplot 4 単独では人に見せる目的のグラフは作れないんですね。
釣れますか
釣りじゃなくて結論・感想を述べただけですよ。
office や illustrator で加工するとおっしゃってますよね。
4単独では作れないと言うことです。
マニュアルを読んで工夫すれば,かなり使える強力なツールだと思う.
自分はgnuplot単体で論文掲載用の図まで作っちゃうけど,
いろいろトリッキーな使い方をしていて,それができるgnuplotが気に入っている.
要は工夫する頭があるかどうかだと思う.
往生際が悪いなplus厨はw
自分は『gnuplot単体で』と書いた通り,+を使ってはいないよ.
250 :
249:2013/10/28(月) 01:30:03.25
私は gnuplot+ 単体で論文掲載用からプレゼン用のグラフまで作る。
なぜなら、工夫すれば色々できるを使いやすく実現したのが plus だから。
それに機能が拡張されて、 4 では逆立ちしてもできない機能もあるし。
+が好きなのはわかったから自分でメンテしてくれよ
本人がplusで満足してんならそれでいいんじゃね
自分が化石だってことを自覚して大人しく黙ってる分には
本家でできて+でできない機能って何?
珍しく伸びてると思ったら……
plus専用スレ立てた方がいいんじゃない?
>>254 >本家でできて+でできない機能って何?
ないよ。拡張だからね。
4系の3D表示回転とかくだらない機能は除いて。
あっちの葡萄は酸っぱいね
259 :
名無しさん@お腹いっぱい。:2013/10/30(水) 03:00:51.68
さぁ?何故でしょう?
不思議です。私にはさっぱり解りません。
インストールが楽だからとかですかね。
emfターミナルのfillが灰色の塗りつぶしなんだけど、
psターミナルみたいな網掛けにする方法ないかな?
元データを加工して網掛け用データを作成するのは最後の手段として。
>>254 4.6.3以降ならMS Officeに貼っても不具合のない日本語含むemfが作れる。
MS Officeを使わざるを得ない環境なんで、これが本当に助かる。
MSOfficeでベクトル画像使ったことないんだけど、emfぐらいしかまともに使えないんだっけ?
svgとかはどうなの?
263 :
261:2013/11/09(土) 21:18:06.50
emf以外はダメっぽい。svgはそもそも認識されない。
かろうじてepsは貼れるけど、文字が画像に変換されてガタガタになる。
んーひどいなw
なんでMSはベクトル画像の扱いがこうも雑なんだろう
わざとやってるとしか思えん
265 :
名無しさん@お腹いっぱい。:2013/11/10(日) 21:14:08.72
一回行った set xrange を解除する方法ってないですか?
unset してもレンジがデフォルト状態(データの最大最小に合わせる)に戻らなくて不便です。
266 :
261:2013/11/10(日) 22:30:26.80
>>264 営業戦略的にわざとやってても不思議はないけど、どうなんでしょね。
>>265 set xrange [*:*]
あとは、help set xrangeでも見てみてちょうだい。
267 :
265:2013/11/10(日) 23:12:31.19
>>261 ほんとだ、emfのfillって強制的に塗りつぶしになるのかね
set term x11
set style fill
p sin(x) w boxes fs pa 5
set term emf
set output "test.emf"
rep
x11上では指定したパターンで見えてるのに
269 :
261:2013/11/20(水) 23:10:03.25
>>268 多分fillパターンってターミナル毎に固有になってるっぽい。
で、emfターミナルのパターンは網掛けでなく、塗りつぶしらしい。
塗りつぶしのfillは自前で設定できるんだから、
網掛けパターン用意してくれると有難いんだけどなぁ。
ついでのメモ書き。4.6.4のemfターミナル使ってて気がついたバグっぽい事。
・
>>200の白抜き丸印で線幅が反映されない。
・矢先を塗りつぶしにした矢印で線幅が反映されない。
・set outputとset multiplot title 'hoge'を繰り返すと、タイトルの文字列が小さく潰れる。
plotした x, y データをファイルに出力することっってできませんか?
termでdumbを使うとかじゃなくて、普通にx, yの値を2列にテキストなどへ出力したいんですが
頑張って作った関数funcのデータを、ファイルに出力したくなるときがあるんですよね
func(x) = 〜〜〜
p "input.dat" u 1:(func($2))
set table
ありがとうごじあます!
良いお年を〜
今年もよろしく〜
吐き出されるグラフが異様に汚いんですけど解像度上げる方法はありますか?
もちろん色々ありますよん
あるある。
ctrl+ホイールスクロールでx軸とy軸をスケール、
ctl+shift+ホイールスクロールでx軸だけをスケール、
ってふうになってるけど、y軸だけのスケールってできないの?
質問には既に答えた。
>>279 まじれすしてやるが、gnuplotの出力形式は山ほどあって
しかもそのそれぞれについて様々な設定ができる。
何をどうしたいのか具体的に書かないと答えられないよ。
282 :
名無しさん@お腹いっぱい。:2014/02/13(木) 20:42:11.92
バージョンの違い、環境の違いによってグラフの質がまったくといっていいほど
別物になるってことありますか?
例えば、gnuplotの同じバージョンでもCygwinとLinuxでは前者で出力したものの
ほうがきれいで、後者だと汚く表示されました。
フォントが入ってないとかのレベルじゃなくて?
284 :
名無しさん@お腹いっぱい。:2014/02/16(日) 15:51:03.97
>>283 フォントではなくて、具体的に言うと等高線を書いているんですが
綺麗に表示される場合と気分が悪くなるような雑な絵のような表示とが
あります。
データファイル「data.log」とそれを使って等高線を書いた時の設定ファイル
「data.plt」あったとします
%gnuplot
>load 'data.plt'
で表示するとおかしくなります。
>>284 どうやったらそんなに情報量のないレスができるんだ。
data.pltとそれぞれの環境でのスクショ貼れよ
ワロタ
リアルで鼻水出ただろw
gnuplotの補完ってもっと賢くならないかなー
普段zshやipython使ってるせいか余計不便さにイラつく
rlwrap噛ませろよ
plus 使えよ。ヒストリー機能も便利だぞ。
すいません0のデータをグラフで非表示にする方法ないでしょうか
>>293 f(x)=x==0?0/0:x
plot "dat" using 0:f($1)
とか?
立ち上げる時のウィンドウサイズをいじりたいんだけど
どうすればいいdすか?
>>296 ターミナルの種類わからないと答えられません
octaveスレが死んでしまった
gnuplotって64ビット対応してないのかな
mingwじゃ無理だった
>>300 あれ?openjaneだと見れなかったから落ちたのかと思っちゃった、ごめん
パッチ内容見たけどこれはほとんど、やった。あらためて自分のソースdiffしてみたけど、そのパッチ
だけじゃ修正しきれてない。
まあx86の定義をx64に修正すればいいだけの話なので素人でも修正可能、ただhtmlhelp.libのx64
がどうしてもダメであきらめた。今のx64ライブラリだとbufferoverflowのライブラリも関連するので
書いててmakefileのHTML_HELP関連消せば通る事に気付きx64ビルド成功。
objdumpで見ると確かにx64なんだけどgunplotを立ち上げると32bitになってる。うーむー。
cvsのバージョンが5.0 alphaになっとった。
Y=x のグラフをxrange [0:1]で描画するとして、[0:0.5]を破線、[0.5:1]を実線するためにはどうしたらいいですか?
gnuplot> f(x,a,b)=a<x ? x<b ? x : 0/0 : 0/0
gnuplot> plot [0:1] f(x,0,0.5), f(x,0.5,1)
とか。
>>304 おお!!ありがとうございます!
このような裏コマンド的な物って普通に巷で買える書籍にはほとんど載ってませんよね?
どこでその知識を仕入れてるのですか?
うーん、描画したくない部分はNaNにするってのはわりとよくある手だと思うけど、
初めて知ったのはどこだったか覚えてないなあ。
というかgnuplotに限らないけどツールの勉強に書籍を使ったこともないなあ。
>>301 CVSのソースだとwin64に対する修正がかかっていると聞いたので
トライしてみました。
ヘルプに関しては書かれているようにHTML_HELP関連消せば通りました。
しかし,アプリケーションエラー(0xc000007b)がでて起動せず。
orz
>>308 ビルドディレクトリで起動したら,起動しました。
タスクマネージャーで確認したら64bitで動いてました。
CVS版でwxtとqtターミナルにpositionオプションがつきました。
2014-04-20 Jérôme Lodewyck
:
new terminal option "position" that specifies the initial position of
the plot window. Applies to Qt and wxt terminals. Feature request #386.
314 :
名無しさん@お腹いっぱい。:2014/05/08(木) 22:35:26.34
保守
マジか!
分かる方がいたら,知恵を貸してください.
ここ2〜3週間くらいの間に,Cygwin+gnuplot環境で,
フォントについて下のようなメッセージが出るようになりました.自宅と会社の両方のPCで起こります.
この2〜3週間の間にどちらのPCもCygwinのアップデートをかけているので,それが問題の引き金だとは思うのですが,
何がいけなかったのか,どうしたら解決できるのかが分かりません.
<terminal pngの場合>
fontconfig: Couldn't retrieve font file name. when opening font "arial", using internal non-scalable font
と表示され,outputの画像に表示される文字がドット絵みたいになる.環境変数に
GDFONTPATH=/cygdrive/c/Windows/Fonts
を設定すると,トゥルータイプフォントっぽい文字が表示される.
<terminal pngcairoの場合>
(process:4816): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='common'
(process:4816): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='latin'
と表示され,outputした画像に文字が(軸の数値すら)全く表示されない.
環境変数にGDFONTPATHを設定しても文字が表示されない.
環境は,
[会社のPC] Win7 64bitOS,Cgwin64,Gnuplot Version 4.6
[自宅のPC] Win7 32bitOS,Cygwin32,
Gnuplot Version 4.6 patchlevel 3 last modified 2013-04-12 Build System: CYGWIN_NT-6.1 i686
5.0rc1試してみたよ。
デフォルトの設定が変わって,今までと同じようにプロットしたら
ずいぶん違った見た目になって,面食らった。
.gnuplotでゴニョゴニョしたら元に戻せたからいいけど。
個人的にはx11で凡例の所をクリックすると,
プロットが一時的に消せるのがありがたい。
でもズームとかreplotですぐに復活するのが,なんだかなぁ。
あと,軸の始点が0でないときの軸ラベルの書式がおかしくなった。
たとえば(うろ覚えだけど),
Y軸が始点0,終点2e-6 なら
2e-6
1.5e-6
1e-6
5e-7
0
始点1e-6,終点3e-6 だと
0.000003
0.000003
0.000002
0.000002
0.000001
みたいな感じ。
>>319 2-3週間前っていうと、ウチはmsys2なんだがその頃pacmanでコアのアップデートしたら
動かなくなったソフトが何件かあった。
バックアップしておいたので、結局コアを以前の状態に戻したら直った
恐らくmsys2(1では無い)の開発者はcygwinの動向をチェックしてると思うので、その頃なん
か変更したんだと思う、全然参考にならなくてごめん
可能なら元の状態に戻してみるのがいいんじゃないかな。
324 :
名無しさん@お腹いっぱい。:2014/06/10(火) 22:48:03.77
4.6にしたらtab補完の後にスペースがつくんだけどこれなんとか出来ないんですか?
あと描画に前よりずいぶん時間がかかるようになってる.アニメーションとかにするとめちゃくちゃおそいわ
>>324 ちなみにターミナルの種類は?
うちはx11だけど描画が遅くなった感じはしないよ
329 :
名無しさん@お腹いっぱい。:2014/06/13(金) 13:39:26.38
>>328 僕もx11です.
見た感じ描画の解像度が高くなってるからそれが理由かも
330 :
名無しさん@お腹いっぱい。:2014/06/22(日) 16:17:24.62
普通の y エラーバー付きの2次元グラフでは横(x)方向は点ですが、
これを1cmくらいに長くして箱の様にしたいのですが、どうしたら良いでしょう?
棒グラフだと必ず下がゼロから始まってしまう。
そうではなくて、任意の高さを中心に誤差が高さの箱を描きたいのです。
例えば、誤差付きエネルギー準位の様に。アイデアを貸してください。
>>330 x幅が固定ならboxes、点ごとに変えるならboxerrorbars。
と、うろ覚えで回答してみる。
gnuplotである観測データをスプライン補完使って描画するには、
plot "hoge.dat" using 1:2 smooth csplines
ってやると思うんだけど、
そのスプライン補完で描画されたグラフの近似式ってのはわからないんだっけか?
そういうときは素直に
help fit
するか、もうちょっと違うツールをご検討下さい
pdfcairoでイタリック使えないってマジ?
>>338 そうやって自ら回答にたどりつかない道を選ぶんですね(笑)
'と"どう使い分けてる?
>>340 キモいから書き込むな、ゴミカス(^ ^)
gnuplotを複数立ち上げようとして
aa.shに
#bin/sh
gnuplot -persist hoge.plt
gnuplot -persist hoge2.plt
・・
みたいなものを作って実行したのですが、
cannot open serverとうまく行かない場合があります
何回もやっているとうまくいく時もあるのですが、
なにか原因考えられれないでしょうか?
>>345 エラーメッセージは出力されたものを、そのまま書いて下さい。
.plt の中で set term は何を指定していますか?
.shをどこからどうやって実行していますか?
.pltでグラフ画像を作ってしまい、後で表示して比較したらいいと思いました。
>>346 ありがとうございます。状況記入少なくて申し訳ありません
エラー全文は、
QtGnuplotApplication error : cannot open server
です
さっき気づいたのですがこの状態で30秒ぐらい待っているとグラフが出てくるときがありました
pltでset termというものは指定していませんでした。
今回のエラーに関連しそうなのでしょうか?勉強不足ですいません調べてみます
.shの実行方法は、fortranのプログラムをeclipseで作成実行しておりプログラム中のcall systemで呼び出していました
他にターミナルから直に./aa.shもやってみたのですが、同じ症状でした
gnuplotで画像出力?して、それをanimateなどで実行するということでよいでしょうか
勉強になります
自分でもやり方調べてみますが、もしまたアドバイスいただけたら幸いです
ありがとうございました。
ゴミカス野郎は自分がわからないと、調べろとかよくわからんこと言い始めるよね。
一種の癇癪に近い
書き方まずかったですか?すいません
>>349 見当違いな質問をしておいて的外れな回答が返ってきたのが気に入らないバカが拗ねてるだけ。ほっといていい。
5.0の正式版はいつ来るの?
たまに何かの拍子に履歴が消えるんだよな・・・
環境依存なのだろうか
来週くらいに5.0-rc2が出るらしい。
with vecを使って2つのデータを,それぞれ,矢印の傘あり/なしでプロットす る際,
set hidden3dをつけていると,noheadオプションの有無によらず矢印の傘 が
無くなってしまいます(下のサンプルの通りです).
hidden3dを外す以外に矢印の傘の有無を制御する方法はありますか?
gnuplotのバージョンは4.6です.
# ====== サンプルここから =====
#!/usr/bin/gnuplot
set hidden3d
splot \
'-' u 1:2:3:4:5:6 w vec title'arrow', \
'-' u 1:2:3:4:5:6 w vec nohead title'segment'
0 0 0 0.5 0.2 0.3
e
0.1 0 0 0.5 0.4 0.6
e
# ====== サンプルここまで =====
data.csvが
#x,f(x),g(x)
...
のようになっている場合、
plot "data.csv" using 1:2:3 filledcurves
でf(x)とg(x)の間の領域を塗りつぶせますが、同じことをy, f(y), g(y)でできないでしょうか
できれば回転 (y, f(y), g(y)のxyを交換したものを90°回す) 以外でお願いします
356 :
355:2014/09/17(水) 20:17:48.81
f(y) <= x <= g(y) を塗りつぶしたいという意味です
>>357 きっついよなほんと
実際、アッー!って叫んだし
さっきまた消えたわ・・・
どうもIOが激しい最中にgnuplotをquitで抜けたときに、
(<unknown>:32015): GLib-GObject-WARNING **: gsignal.c:2392: instance `0x2ac978040b60' has no handler with id `129'
とかいう変なメッセージを出した後 segmentation fault になるっぽい
バージョンは4.6.5
361 :
名無しさん@お腹いっぱい。:2014/10/09(木) 01:44:25.33
gnuplot -e "plot sin(x)"
上記をzsh等の上から実行するとグラフができてから一瞬で終了してしまう
止めておく方法は無いだろうか?
この止める方法があれば、10分ごとに更新されるデータからgrepなどで取り出した情報から
一気にグラフ化するまでシェルスクリプトでやれて便利になるのだが...
>>361 マニュアルの
-persist
replot
をチェック
363 :
名無しさん@お腹いっぱい。:2014/10/09(木) 08:31:02.23
>>362 Thanks
-persist オプション便利だね
-persistだと、ショートカットキーやマウスで拡大とか効かないんだよね。
しょうがないからperlとかでパイプ開いてコマンド流し込んだりとか。
ちなみにtermはx11。
loadすれば?
366 :
名無しさん@お腹いっぱい。:2014/10/15(水) 18:21:47.63
保守
5.0の正式版はいつ来るの?
CVSはもう5.1までいってるのに、5.0はrc2から進まないって。。。
いつのまにか5.0-rc3が出てた。
finalって書いてあるよ。
break axisを使いたいだけのためだけどgnuplotを触ってみることにしました
色々できそうですね。散布図ぐらいしか使わないかもですが
オレは自作GUIツールのグラフ表示にgnuplotで散布図出してるけど、色々できすぎて泣けてくる。
できればクリッカブルマップ的なことができると、もっとうれしいなと思う今日この頃。
あけおめ保守
丁度今来た
Ver5リリースしたんだね
自分はCygwinに来るまで座して待つ
やっと5.0正式版きたね。
心置きなくインスコできる。
何が変わったんですか?
>>377 読むのがダルイから聞いてんだよ
それぐらいも分からないとか頭おかしい
ありがとうございます
ファイル名やディレクトリ名に = を含むと補完がうまく効いてくれない
何か方法ないかな?
使えるからといって使うと「センスないね」などと詰られることが時々ある
理不尽と思うかもしれないがこればかりは慣れていただくしかない
支障ない限りは = : + - @ あたりの記号は自由に使うけどなぁ
とはいっても今の仕事はgnuplot必須なんで諦めてるけど・・・
錯視じゃないの?
ホントはまっすぐなのに曲がって見えるとか。