レス数が1000を超えているけど、まだ書けるかも知れないよ。
gnuplot を使おう。 その3
1 :名無しさん@お腹いっぱい。 :2011/08/25(木) 12:15:50.61 .net グラフ描画ソフト gnuplot のスレ。 gnuplot 公式 Web ページ http://www.gnuplot.info/ 前スレ gnuplot を使おう。 その2 http://hibari.2ch.net/test/read.cgi/unix/1164719425/
529 :名無しさん@お腹いっぱい。 :2016/03/13(日) 20:12:53.93 .net >>523 θの形式がcharacter entity referenceだってこと? ただ、character entity referenceをgnuplotがどうサポートしてるかについては マニュアルもWebのページも見つけられない PNGとかでしか使えないみたいだからgnuplotの機能じゃなくてGDライブラリの機能かもしれない
530 :名無しさん@お腹いっぱい。 :2016/03/13(日) 20:13:28.54 .net PNG出力のときとかしか使えない
531 :名無しさん@お腹いっぱい。 :2016/03/14(月) 04:29:51.73 ID:6dKZEgQeB >>529 >>530 gnuplot> set out 'tmp.png' gnuplot> set title '{Θ}' gnuplot> plot sin(x) gnuplot> set out で試してみたのですが,使えませんでした。 どうやって使うのでしょう?
532 :名無しさん@お腹いっぱい。 :2016/03/14(月) 04:34:30.95 ID:6dKZEgQeB >>531 set title '{Θ}' は set title '{&}'theta;'です。 ここの書き込み自体が文字実体参照つかってますね。^^;
533 :名無しさん@お腹いっぱい。 :2016/03/14(月) 04:36:49.44 ID:6dKZEgQeB >>532 ごめん set title '{&}'theta;'でなくて set title '{θ}' ね。(__)
534 :名無しさん@お腹いっぱい。 :2016/03/14(月) 04:38:13.48 ID:6dKZEgQeB なんどもすまぬ set term pngはかけた上での話。
535 :名無しさん@お腹いっぱい。 :2016/03/14(月) 07:47:16.77 ID:vmtXWVPGU >>521 で >enhanced textでTimes New Romanを指定するのはフォント名にスペースが >入っているせいかうまくいきません。 と書きましたが,やり方がわかりました。 (ps_guide.pdfやまたはs_guide.psにTimes Romanで例がありました。) set title '{/Times-New-Roman=18 a}'
536 :名無しさん@お腹いっぱい。 :2016/03/14(月) 07:59:09.80 ID:vmtXWVPGU gnuplotのマニュアルのenhanced textの項に 特殊記号は、8 進文字コードを与えることで数字で指定できます。 例えば、 {/Symbol 245} は、Adobe Symbol フォントの無限大の記号です。 しかし、これは、 UTF-8 のようなマルチバイトエンコーディングではうまくいきません。 UTF-8 環境では、タイプ打ち、そうでなければあなたが望む文字を選ぶような方法で、 マルチバイト列を間接的に入力できるようにすべきです。 で書いてあるので, set encoding utf8 として, set title '{/Times-New-Roman π}' とするのはユニコードがサポートされたあたりからgnuplot的には 正しいやり方だといえるでしょう。
537 :名無しさん@お腹いっぱい。 :2016/03/14(月) 11:08:01.43 .net SVGなら分かるが
538 :名無しさん@お腹いっぱい。 :2016/03/14(月) 12:09:04.84 ID:vmtXWVPGU >>537 確かにそうなんですよね。 latexやhtmlのようなやり方で 記述できればそれに越したことではないと思います。 マニュアルに>>536 のように書かれていて, それでやれればやれないよりはにましとかなと思います。 (Postscript terminalでの8進数で記述するよりいいかと)
539 :名無しさん@お腹いっぱい。 :2016/03/14(月) 13:04:43.68 .net >>537 教えてー
540 :名無しさん@お腹いっぱい。 :2016/03/16(水) 14:52:38.61 .net HTML, XML, SVGだと みたいに実体参照できる
541 :名無しさん@お腹いっぱい。 :2016/03/17(木) 17:39:50.48 .net >>539 >>540 これってsvg のスクリプトのことですよね。だから、svgターミナルからはできないってことでいいのかな。 svgをはきださせて、スクリプトをエディタで編集するってことでいいんですか?
542 :名無しさん@お腹いっぱい。 :2016/03/18(金) 08:35:56.06 .net >>541 テストしたらこうでした。 pngかgifとかでしか使えないみたい。 set terminal wxt noenhance plot x title
543 :名無しさん@お腹いっぱい。 :2016/03/18(金) 08:36:56.13 .net >>541 テストしたらこうでした。 pngかgifとかでしか使えないみたい。 set terminal wxt noenhance plot x title θ タイトルは「θ」 set terminal png noenhance plot x title θ タイトルは「θ」 set terminal svg noenhance plot x title θ タイトルは「θ」 (ダブルクオートは書き込めなかったから消してます)
544 :名無しさん@お腹いっぱい。 :2016/03/18(金) 10:17:14.76 .net >>543 情報ありがとう。 便利な機能なので、 feature requestでもだしてみます。 #お前がやれと言われそうですが
545 :名無しさん@お腹いっぱい。 :2016/03/18(金) 10:55:00.38 .net >>544 よろしく。 ちなみに/Symbolでも記号を指定できるんだけどSymbolフォントの扱いが terminalによってばらばらなんだよね。 確かwxtだとデフォルトのフォントを指定してもSymbolフォントになってしまって 実際にはかっこ悪いフォントが選択される。 pngだとデフォルトのフォントが反映されたような。
546 :名無しさん@お腹いっぱい。 :2016/03/18(金) 19:29:25.16 .net >>545 パソコンから書き込んだら2chブラウザで見れないので、スマホから書き込んでいます。 windowsの文字コード表(起動の仕方は、ググって下さい。m(__)m)を起動してTimes New Romanのフォントを探すとギリシャ文字がでてくるので、これをスクリプトを書いているエディタにコピペします。 enhanced textでは '{/Times-New-Roman π}' でπの部分は実際は文字コード表からとってきたコードのフォントです。シングルクォートを使う方がお勧めです。(ダブルクォートでないとできないこともあるようですが。) wxt だけでなく、色々なターミナルで使える方法です。
547 :名無しさん@お腹いっぱい。 :2016/03/19(土) 00:12:01.39 .net >>546 Times New Roman のようにフォント名にスペースがある場合は、スペースをハイフン(-)で置き換える(Times-New-Roman)のがTipsです。(これで大分悩んだ(*_*))。
548 :名無しさん@お腹いっぱい。 :2016/03/19(土) 07:39:58.99 .net >>543 ちなみにenhanced textでは、{'/:Italic \θ'} のように書く。
549 :名無しさん@お腹いっぱい。 :2016/03/19(土) 07:42:47.38 .net >>548 間違えた。 '{/:Italic \&theta}'
550 :名無しさん@お腹いっぱい。 :2016/03/19(土) 10:01:00.52 .net >>545 feature requestsに あげました。 https://sourceforge.net/p/gnuplot/feature-requests/440/
551 :名無しさん@お腹いっぱい。 :2016/03/19(土) 10:16:33.23 .net >>550 ありがとう。 どうしてgdを使っているterminalは対応しているのかだけでも分かればすっきりする。
552 :名無しさん@お腹いっぱい。 :2016/03/21(月) 15:24:03.53 .net Unix板なのにWindowsの話ですいません。でも、このビルドツールはunix類似環境で動くので言い訳しておきます。 Build instructions using MSYS2/Mingw-w64 https://sourceforge.net/p/gnuplot/support-requests/199/ このインストラクションにそって開発版のgnuplotのビルドが出来ました。 いい時代になったものだ。
553 :名無しさん@お腹いっぱい。 :2016/03/22(火) 17:53:20.30 .net >>551 http://gnuplot.10905.n7.nabble.com/Why-the-gd-based-terminal-does-support-chracter-entity-reference-tp20037p20039.html が理由のようです。 予想されたようにlibgdの機能を使っているようです。 他で実装するのは、不可能ではないと思いますが、まあ、やってくれないでしょう。
554 :名無しさん@お腹いっぱい。 :2016/03/22(火) 17:56:56.34 .net とりあえずは、>>546 の方法を使って下さい。この方法は、この方法で合理性がある方法なので。
555 :名無しさん@お腹いっぱい。 :2016/03/24(木) 11:55:45.02 .net >>553 やっぱりそうなんだ。 お蔭様ですっきりしました。
556 :名無しさん@お腹いっぱい。 :2016/04/03(日) 06:17:01.59 .net cygwin版gnuplotのcairoベースターミナル(wxt,pngcairo, pdfcairoなど)で Windowsのフォントディレクトリにあるフォントを使うには,fontconfigで そのように設定すればいい。 /etc/fonts/ にlocal.confを作成し, <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <!-- /etc/fonts/fonts.conf file to configure system font access --> <fontconfig> <dir>/cygdrive/c/Windows/Fonts</dir> </fontconfig> と書く。そののち, $ fc-cache -fv を実行する。 上は,C:\Windows\Fontsに(まあ普通はそう)にWindowsのフォントがある 場合なのでその他の場合は /cygdrive/c/Windows/Fonts を適宜書き直す。 これでは,全ユーザーに設定がいく。 ユーザー限定では, ~/.local/share/fonts/ または ~/.fonts/ にlocal.confを作成すればよいようだ。 (fc-cache -fvが上の二つを見にいっている。) これは,gnuplotに限らず,fontconfigでフォントをハンドルしているアプリケーションすべてで 成り立つ設定だ。 これでLANG=Cしなくても,wxtターミナルのフォントがまともになった。
557 :名無しさん@お腹いっぱい。 :2016/04/09(土) 01:14:22.79 .net 塗りつぶしていない領域と塗りつぶした領域で点線の色を変えるにはどうすればいいんでしょうか? set terminal png set grid front plot x with filledcurves x1 を実行すると塗りつぶした領域では格子線が白で表示されるので分かりやすいです。 同じような効果を得たいのですが、wxtやpngcairoに出力した場合は点線の色が常に黒になるため 塗りつぶした領域では点線が見づらくなってしまいます。 白と黒の点線を指定できれば同じ効果が得られるんでしょうが 点線の地の色と線の色を両方指定する方法とかないのでしょうか?
558 :名無しさん@お腹いっぱい。 :2016/04/09(土) 21:51:44.26 .net > 点線の色が常に黒になるため 点線が常に黒というのがよくわかりません。
559 :名無しさん@お腹いっぱい。 :2016/04/09(土) 21:58:05.31 .net 理解力がなかったm(__)m。gridの点線の話か。 png だけ違うのは、libgdの機能のせいかもしれない。
560 :名無しさん@お腹いっぱい。 :2016/04/09(土) 23:21:55.69 .net >>559 そうだと思うんだけど、塗りつぶしていない領域と塗りつぶした領域で 点線の色を変える方法を知ってたら教えて欲しいです。
561 :名無しさん@お腹いっぱい。 :2016/04/10(日) 07:07:40.01 .net >>560 ここで、答えがつかないようならgnuplot Q&A 掲示板で聞いてみたら? 名前さらすのがいやならハンドルネームでいい訳だし。
562 :名無しさん@お腹いっぱい。 :2016/04/10(日) 10:09:03.18 .net >>561 聞いてみる。 どこが一番活発なんだろう?
563 :名無しさん@お腹いっぱい。 :2016/04/10(日) 12:31:15.94 .net gnuplot Q&A 掲示板に投稿しようとしたら書き込み不可って言われた…。
564 :名無しさん@お腹いっぱい。 :2016/04/10(日) 16:49:37.50 .net gnuplot Q&A 掲示板の3129番に投稿しておいた。
565 :名無しさん@お腹いっぱい。 :2016/04/10(日) 19:15:05.90 .net >>563 gnuplot Q&A 掲示板への投稿は、スマホからでもできますよ。現に3129番への投稿はスマホから。
566 :名無しさん@お腹いっぱい。 :2016/04/11(月) 14:34:46.47 .net >>564 パソコンから書き込もうとしたんですが、だめでした。 代理投稿ありがとうございました。
567 :名無しさん@お腹いっぱい。 :2016/04/11(月) 17:34:00.25 .net >>566 grid線を灰色にかえるという、代替案が掲示板ででました。 これでいいかどうかは、話題主さん次第です。別の回答者が現れるかもしれません。
568 :名無しさん@お腹いっぱい。 :2016/04/11(月) 19:54:01.11 .net >>567 塗り津美している領域と塗りつぶしていない領域で点線の色を変えたいのでちょっと違います。 でも、それを実現する設定はたぶんないんでしょうね。
569 :名無しさん@お腹いっぱい。 :2016/04/11(月) 21:29:33.44 .net なんでこの質問者のレスは全てイラッとするんだろうか…
570 :名無しさん@お腹いっぱい。 :2016/04/11(月) 23:40:35.91 .net >>568 pngターミナルでgridの色分けしているように見えるのは、錯覚らしい。 領域の境目の座標がわかればver. 5 なら、plotコマンドと三項演算子とfor文などつかって強引にやれんことはないかな。 問題は、領域の境目の座標を知ることだと思います。例のように直線ならば簡単ですが。
571 :名無しさん@お腹いっぱい。 :2016/04/12(火) 01:48:55.60 .net >>570 身落とし。set arrowとdo for使うアイディアが出されていました。
572 :名無しさん@お腹いっぱい。 :2016/04/12(火) 08:56:05.06 .net >>571 身落とし => 見落とし m(__)m
573 :名無しさん@お腹いっぱい。 :2016/04/12(火) 11:32:04.61 .net >>570 なるほど。pngではgridの色と点線が違うことが理由でしたか。 すっきりしました。ありがとうございます。
574 :名無しさん@お腹いっぱい。 :2016/04/12(火) 16:50:18.67 .net gnuplot Q&A 掲示板の書き込み読んだらgnuplotを使い込んでいてすごい。 gnuplotを仕事で使ってるのかな?
575 :名無しさん@お腹いっぱい。 :2016/04/12(火) 18:53:19.58 .net >>574 仕事で使っている人ですよ。私も仕事で使ってます。 掲示板便利ですよ。
576 :名無しさん@お腹いっぱい。 :2016/04/12(火) 19:24:08.06 .net >>575 やっぱり。かなり使い込んでそうだから。 データ分析とかに使うことが多いんですか?
577 :名無しさん@お腹いっぱい。 :2016/04/12(火) 21:59:54.21 .net >>576 論文にのせる図の作成。 日頃の実験データの整理。 自作の機器制御プログラムでのリアルタイムプロット。 fitコマンドによるパラメータ最適化。 等々。 gnuplotに触らない日の方が少ない位です。 本格的データ解析はoctaveでやりますが、gnuplotの方が遥かに使用頻度が高いです。
578 :名無しさん@お腹いっぱい。 :2016/04/13(水) 01:34:26.69 .net >>577 大学の研究ですか。楽しそう。 実験データをまとめて比較したりしているんですかねえ。 使い方のノウハウとかプロセスとかたまってそうでうらやましいです。
579 :名無しさん@お腹いっぱい。 :2016/04/14(木) 06:27:39.86 .net >>574 takeno.iee.niit.ac.jp/~shige/gnuplot/gnuplot.html#info このぺーじは本当に情報の宝庫です。もしご存じなければご覧あれ。 gnuplot Q&A 掲示板にも頻繁に登場されておーと思う回答をされます。
580 :名無しさん@お腹いっぱい。 :2016/04/14(木) 06:30:09.65 .net >>579 リンクミス。 http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gnuplot.html#info
581 :名無しさん@お腹いっぱい。 :2016/04/14(木) 07:28:47.85 .net >>579 >>580 ここも見てみて下さい。 http://www.ss.scphys.kyot-u.ac.jp/person/yonezawa/contents/program/gnuplot/
582 :名無しさん@お腹いっぱい。 :2016/04/14(木) 07:30:48.38 .net >>581 また、リンクミスm(__)m。 http://www.ss.scphys.kyoto-u.ac.jp/person/yonezawa/contents/program/gnuplot/
583 :名無しさん@お腹いっぱい。 :2016/04/14(木) 14:14:45.21 .net サイトの情報ありがとうございます。 読んでみます。
584 :名無しさん@お腹いっぱい。 :2016/04/15(金) 23:02:56.09 .net gnuplot+gawkの環境で、fileAの3列目を横軸に、fileBの5列目を縦軸にグラフを描くにはどうすれば良いですか?
585 :名無しさん@お腹いっぱい。 :2016/04/15(金) 23:36:36.37 .net >>584 awkは基本的に一つのテーブル型のデータファイルを手抜きして操作できるスクリプト。 二つのデータファイルをあつかうにはpasteコマンドでファイルを連結させるのが常套。 pasteを使うのが前提ならばawkは不要。 http://folk.uio.no/hpl/scripting/doc/gnuplot/Kawano/datafile3.html#paste
586 :名無しさん@お腹いっぱい。 :2016/04/16(土) 00:00:32.74 .net 時間分解能の違う2種類の時系列データで同時刻の際の相関を見るとかだと awkの連想配列が便利と言えば便利かもね
587 :名無しさん@お腹いっぱい。 :2016/04/16(土) 00:50:28.09 .net >>585 ありがとうございました 思った通りに動作しました >>586 今回は同じだったので異なる場合を見るときは使ってみます
588 :名無しさん@お腹いっぱい。 :2016/04/16(土) 18:49:39.25 .net 3次元のグラフの目盛の数字と目盛のラベルが他の軸だったり、軸の線と重なる ことがありますが、どうするのがいいのでしょうか? viewやoffsetを調整することはできるのですが、場当たり的な対応であり、 手間もかかるので、うまい対処方法はないでしょうか?
589 :名無しさん@お腹いっぱい。 :2016/04/16(土) 21:39:00.43 .net >>588 これは、難しい。3Dだから。自分にはいわれている場当たり的対応しか、思い付かない。statsも2次元だし。 ダメもとでgnuplot Q&A 掲示板で聞いてみるとか。
590 :名無しさん@お腹いっぱい。 :2016/04/17(日) 06:38:01.46 .net >>588 gnuplot Q&A 掲示板 に投稿してみた。 3140番です。
591 :名無しさん@お腹いっぱい。 :2016/04/17(日) 12:00:52.34 .net >>590 ありがとうございます。
592 :名無しさん@お腹いっぱい。 :2016/04/18(月) 01:40:05.39 .net >>589 viewの角度を元にoffsetを調整することを思いついて試してみたんですが gnuplotが目盛の表示位置を調整しているため、うまく行かないです。 zを25度回転したあたりで1文字分ずらすようです。 ソースを読めば動作が分かるんでしょうがそこまでできないでいます…。
593 :名無しさん@お腹いっぱい。 :2016/04/18(月) 09:16:11.00 .net だからお前らがソース読めってか?
594 :名無しさん@お腹いっぱい。 :2016/04/18(月) 18:07:49.57 .net >>588 >>592 gnuplot Q&A 掲示板の3142番の回答のようにバグの可能性があります。 bug ticketsに登録できますか? やり方がわからないならアシストします。
595 :名無しさん@お腹いっぱい。 :2016/04/18(月) 19:55:24.22 ID:8GKie5xrY >>594 z軸の回転角度を26〜154度にするとy軸の目盛が急に軸に近づくのは おかしい気はしていました。バグなんですかねえ。 bug ticketsに登録したことはないので自信はないです…。 Statusはopenで、Ownerは空でいいと思うし、内容は何とか書けないこともないと思うんですが Milestone、Priority、Labelsはどうするんだろうという感じです。
596 :名無しさん@お腹いっぱい。 :2016/04/18(月) 19:56:58.35 .net z軸の回転角度を26〜154度にするとy軸の目盛が急に軸に近づくのは おかしい気はしていました。バグなんですかねえ。 bug ticketsに登録したことはないので自信はないです…。 Statusはopenで、Ownerは空でいいと思うし、内容は何とか書けないこともないと思うんですが Milestone、Priority、Labelsはどうするんだろうという感じです。 .scに書き込んでしまったので念のため.netからも。
597 :名無しさん@お腹いっぱい。 :2016/04/19(火) 00:45:42.25 .net > Milestone、Priority、Labelsはどうするんだろうという感じです。 ここらは、全部空欄でいいですよ。 私がレポートするときはじめは、気にしてましたが、今は気にしてません。 最初だけは、Anonymousで書き込めますが、やりとりをするにはsourceforgeのアカウントが必要です。アカウント名は、ハンドルネームでもかまいません。 gnuplot Q&Aの回答にあったスクリプトはつけておくことをおすすめします。
598 :名無しさん@お腹いっぱい。 :2016/04/19(火) 12:21:11.42 .net >>597 なるほど。登録してみます。 ちなみにviewの角度を元にoffsetを調整する関数が書けそうなのでそれを 完成させてから合わせてbug ticketsに登録しようと思います。
599 :名無しさん@お腹いっぱい。 :2016/04/19(火) 20:19:16.92 .net >>593 登録しました。 https://sourceforge.net/p/gnuplot/bugs/1781/ 対応してくれるでしょうか。
600 :名無しさん@お腹いっぱい。 :2016/04/19(火) 20:35:11.04 .net >>594 宛でした。
601 :名無しさん@お腹いっぱい。 :2016/04/19(火) 20:39:21.29 .net なお、>>594 さんに対応して下さいということではないです。 誰かに対応してもらえるかなあ?という思いを率直に書いただけです。 あしからず。
602 :名無しさん@お腹いっぱい。 :2016/04/19(火) 21:13:46.55 .net >>601 登録確認しました。 デベロッパ側の返事があるといいですね。
603 :名無しさん@お腹いっぱい。 :2016/04/20(水) 02:41:15.26 .net dgrid3dによる変換後のデータと元データを同じグラフで描画する方法は あるのでしょうか? イメージとしては以下の両方のコマンドを描画したいです。 splot "scatter.dat" using 1:2:3 with impulses set dgrid3d splot "scatter.dat" using 1:2:3 with lines ところが、それをしたいと思って以下を実行すると impulsesも変換後のデータを使ってしまいます。 set dgrid3d splot "scatter.dat" using 1:2:3 with lines, \ "scatter.dat" using 1:2:3 with impulses
604 :名無しさん@お腹いっぱい。 :2016/04/20(水) 02:56:33.70 .net >>603 解決しました。 set table $dataに一度出力してから$dataとscatter.datを描画すればよかったです。
605 :名無しさん@お腹いっぱい。 :2016/04/20(水) 03:19:11.33 .net >>604 解決したと思ったら問題がまだ残っていました。 dgrid3dで作成されるデータは元データが存在する範囲に限られるので取り得る値であっても データがなければ曲面は描画されません。 例えば100点満点のテストのグラフを描画したいのでグラフの範囲は[0:100]だけど 実際の最低点は30点で、最高点は90点だった場合、どのように示すのがいいでしょうか? そのままグラフを示すと曲面が0〜100点を示していると誤解する人が出そうです。 グラフの範囲を[30:90]にするというのも一案だとは思いますが、 グラフの範囲は[0:100]だという前提で、曲面の範囲は30〜90点であることも 誤解なく示すにはどうするのがいいかアイデアを頂きたいです。
606 :名無しさん@お腹いっぱい。 :2016/04/20(水) 03:54:50.06 .net >>605 3項演算子はつかえませんか? 具体例は『3項演算子 gnuplot』で検索してみて下さい。
607 :名無しさん@お腹いっぱい。 :2016/04/20(水) 09:25:10.27 .net >>606 よく考えたらimpulsesの根元が元データの分布を示していることに気が付きました。 必要であればstatで最小値・最大値が分かるのでデータの範囲をbaseの位置に示してもいいでしょうか。 ただ、当初の質問から派生した疑問としてある曲面の上にあるデータと曲面の下にある データで色分けするにはどうすればいいのでしょうか? 2次元グラフで3項演算子を活用する方法は分かったのですが、3次元の場合の 方法は見つけられていません。 ばらついて分布する元データからdgrid3dで格子の曲面を生成し、 元データがその曲面の上下どちらにあるかを分かりやすく示したい といった利用方法を想定しています。
608 :名無しさん@お腹いっぱい。 :2016/04/20(水) 12:13:43.98 .net >>667 このあたりのことは、gnuplot Q&A 掲示板でよく登場される竹のさんが深い造形わをお持ちです。 こちらで回答がつかない場合は、gnuplot Q&A 掲示板で質問されたほうが いいと思います。
609 :名無しさん@お腹いっぱい。 :2016/04/20(水) 13:51:37.94 .net >>603 >>604 >>605 >>607 もっと具体的にモデルデータをつけでもらえませんか。ver. 5ならデータブロックでスクリプト内にデータがかけるので。 また、 set dgrid3d splot "scatter.dat" using 1:2:3 with lines, \ "scatter.dat" using 1:2:3 with impulses set tableで外部ファイルに吐き出させたデータ(長ければ、その一部)も書いてもらえませんか? 具体的なことがわからないとどこで質問しても答えはつかないと思います。
610 :名無しさん@お腹いっぱい。 :2016/04/20(水) 14:18:22.00 .net >>609 2つの変量が結果に作用する傾向を確認したいといったケースを想定しています。 データにはあまり依存しないと思いますので、 例えば以下のデータをプロットする場合はいかがでしょうか。 # 要因A 要因B 結果 30 50 20 60 80 90 50 70 80 30 60 60 55 60 55 40 70 60 30 80 20 80 80 40 40 50 95
611 :名無しさん@お腹いっぱい。 :2016/04/20(水) 14:23:56.94 .net >>608 面白いスクリプトを書かれていらっしゃるのを拝見しました。 状況を見てgnuplot Q&A 掲示板の利用も検討してみます。
612 :名無しさん@お腹いっぱい。 :2016/04/20(水) 17:19:17.12 .net >>610 サンプルデータありがとうございます。 まだ、なさりたいことを完全に把握しきれてないので。 >例えば100点満点のテストのグラフを描画したいのでグラフの範囲は[0:100]だけど 実際の最低点は30点で、最高点は90点だった場合、どのように示すのがいいでしょうか? そのままグラフを示すと曲面が0〜100点を示していると誤解する人が出そうです。 グラフの範囲を[30:90]にするというのも一案だとは思いますが、 グラフの範囲は[0:100]だという前提で、曲面の範囲は30〜90点であることも >誤解なく示すにはどうするのがいいかアイデアを頂きたいです。 この点は、 set xrange [0:100] set yrange [0:100] set zrange [0:100] ではだめですか?
613 :名無しさん@お腹いっぱい。 :2016/04/20(水) 17:59:25.29 .net >>612 そのような方法もあると思います。 元のデータが分布している範囲を明示する必要があれば>>607 の前半の方法も あるかと思います。 同じような悩みを持った方がいらっしゃいましたらどうしたか アイデアを共有して頂きたいと思ってました。
614 :名無しさん@お腹いっぱい。 :2016/04/20(水) 19:32:34.34 .net 俺もどういうものを作りたいのかいまいちよくわからんけど、grid3dとpm3dの組み合わせとかでいいんけ? それとも、 ttp://www.phyast.pitt.edu/~zov1/gnuplot/html/bargraphs.html の一番下のbargraphみたいなの作りたいの? 作りたいグラフっぽい図を示してもらった方が的を射た答が返ってくると思うよ
615 :名無しさん@お腹いっぱい。 :2016/04/20(水) 19:43:51.73 .net あれ?なんかどちらも違う気がするな
616 :名無しさん@お腹いっぱい。 :2016/04/20(水) 19:52:42.56 .net 連投(´・ω・)スマソ 曲面の上と下のデータってどういう意味? grid3d使ったら、データはすべて曲面上に乗るんじゃないの?
617 :名無しさん@お腹いっぱい。 :2016/04/20(水) 19:59:07.00 .net >>607 >ばらついて分布する元データからdgrid3dで格子の曲面を生成し、 >元データがその曲面の上下どちらにあるかを分かりやすく示したい といった利用方法を想定しています。 dgrid3dは格子ごとの平面を生成します。 まず、x, y座標からどの格子に属するのを知る必要があります。 これは、原点を考慮した割算とfloor関でできると思います。 また、格子の座標がわかるので格子の平面の方程式がわかり、それがわかれば格子上のz座標がわかります。 与えられたデータのz座標が格子上の z座標より大きいか小さいかてでプロットをかえる三項演算子の実装をします。 文章でいうとこんなところです。 スクリプトにするには、色々考えないといけませんが、今のgnuplotのスクリプトの強力さを考えると実装できると思います。
618 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:00:53.73 .net >>614 >>605 は、こんなグラフを作るにはどうすればいいの?って疑問じゃなくて こういう場合はどういうグラフにするのがいいんだろう?って疑問なので どんなグラフがいいのか私も分かりません。 >>607 のやり方で対応することにします。 もしも、同じような疑問を持たれた方がいらっしゃいましたら経験を 共有して頂ければ十分です。
619 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:05:31.01 .net >>616 生データとそれを元に生成したgrid3dの曲面の両方を描画します。 生データとgrid3dの曲面はずれますので曲面の上下に位置することになり、 そのずれを見やすく色分け表示したいと思いました。
620 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:15:26.41 .net >>617 2次元の場合でも3次元も場合でも三項演算子の使い方は基本的には同じなんですね。 dgrid3dの曲面は式では与えられないので交点のデータから判定するための 条件を自分で記述する必要があるということですか。 方針はイメージできました。ありがとうございます。
621 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:25:49.23 .net $dataに格納されたデータにアクセスするコマンドって用意されているんでしたっけ? 配列のようにアクセスできれば理想ですが、そこまでできないにしても そもそも部分的にデータを取り出すにはどうするんでしょう? 私が知らないだけかも知れませんが。
622 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:31:45.62 .net $dataに限らずデータファイルでもいいんですが plot、splot以外から行や列を参照する方法ってあるんですか?
623 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:35:17.13 .net >>619 次のようなスクリプトを書きました。 # スクリプト $data_dgrid3d << EOD # 要因A 要因B 結果 30 50 20 60 80 90 50 70 80 30 60 60 55 60 55 40 70 60 30 80 20 80 80 40 40 50 95 EOD set dgrid3d set table 'dgrid3d_table.txt' splot $data_dgrid3d using 1:2:3 unset table unset dgrid3d unset logscale xyz set xrange [0:100] set yrange [0:100] set zrange [0:100] set xlabel 'x' set ylabel 'y' set zlabel 'z' splot 'dgrid3d_table.txt' using 1:2:3 with lines, \ $data_dgrid3d
624 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:38:35.55 .net >>619 適当にマウスで回転させてスクショをとったのが下。 http://www.geocities.co.jp/tmgpltwin/Files/20160420.png ようするになさりたいことはこのグリッドの上と下でマーカの種類や色を変える ということですよね。
625 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:43:11.74 .net >>623 あえてtableへのプロットをデータブロックにしないで、ファイルにして先頭のほうだけ書いたのがこれ # Surface 0 of 1 surfaces # Curve title: "$data_dgrid3d using 1:2:3" # IsoCurve 0, 10 points # x y z type 80 50 58.7832 i 80 53.3333 58.5131 i 80 56.6667 58.2234 i 80 60 57.8866 i 80 63.3333 57.5448 i 80 66.6667 56.982 i 80 70 56.0251 i 80 73.3333 53.6147 i 80 76.6667 49.451 i 80 80 40 i
626 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:51:04.51 .net >>622 以下参照 http://www.ss.scphys.kyoto-u.ac.jp/person/yonezawa/contents/program/gnuplot/array.html
627 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:52:05.23 .net >>622 なお,最近の開発版ならarrayがあり配列が使える。 データファイルから配列に格納するやり方は以下を参照。 FILE = 'orbital_elements.dat' stats FILE index 2 using 2 prefix "A" array Data[A_records] stats FILE index 2 using (Data[int($0+1)] = $2) prefix "B"
628 :名無しさん@お腹いっぱい。 :2016/04/20(水) 20:52:24.16 .net >>624 そういうことです。
296 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200
本文 スレッドタイトル 投稿者