- not so Frequently Asked Questions - update 2004/9/5
|
|
not so FAQ
|
ãƒ‡ãƒ¼ã‚¿ãƒ•ã‚¡ã‚¤ãƒ«ã®æ•°å€¤ã®ãƒ—ãƒãƒƒãƒˆ (ãã®1)何ã‹ã®è¨ˆç®—や実験を行ã„,ãã®çµæžœã‚’グラフã«ã™ã‚‹ã®ãŒï¼Œ ç†ç³»ã®ç ”究者ã«ã¨ã£ã¦æœ€ã‚‚多ã„gnuplotã®ä½¿ã‚れ方ã§ã¯ãªã„ã§ã—ょã†ã‹ï¼Ž çµæžœã®ãƒ‡ãƒ¼ã‚¿ã‚’プãƒãƒƒãƒˆã—ã¦å…¨ä½“を眺ã‚ï¼ŒçµæžœãŒè‰¯ã•ãã†ã ã£ãŸã‚‰ãƒã‚¹ãƒˆã‚¹ã‚¯ãƒªãƒ—ト ã«ã—ã¦å°åˆ·ã—ãŸã‚Šï¼ŒEPSã«ã—ã¦TeXã§æ›¸ã‹ã‚ŒãŸè«–æ–‡ã«è²¼ã‚Šè¾¼ã‚“ã り.... プãƒãƒƒãƒˆã§ãるデータã®ãƒ•ォーマットã¯ï¼Ÿ2次元ã®ãƒ‡ãƒ¼ã‚¿ã‚ã–ã‚ã–æ›¸ãã¾ã§ã‚‚ç„¡ã„話ã—ã§ã™ãŒï¼Œä¸€å¿œã“ã“ã«ã¾ã¨ã‚ã¦ãŠãã“㨠ã«ã—ã¾ã™ï¼Žæ•°å€¤ãƒ‡ãƒ¼ã‚¿ã¯ï¼Œç©ºç™½(スペースもã—ãã¯ã‚¿ãƒ–)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸ カラムã«ã—ã¾ã™ï¼Žè¡Œã®å…ˆé ã«#ãŒã‚ã‚‹ã¨ï¼Œãã®è¡Œã¯ç„¡è¦–ã•れã¾ã™ï¼Ž 実ã¯gnuplotã¯ï¼Œãƒ‡ãƒ¼ã‚¿ãŒã©ã®ã‚ˆã†ã«æ›¸ã‹ã‚Œã¦ã„ã¦ã‚‚,èªã¿è¾¼ã¿ã®æ›¸å¼ を指定ã™ã‚‹ã“ã¨ã§ãƒ‡ãƒ¼ã‚¿ã‚’èªã‚ã‚‹ã®ã§ã™ãŒï¼Œã“ã“ã§ã¯ã“ã®æ–¹æ³•㯠å–り上ã’ã¾ã›ã‚“. # X Y 1.0 1.2 2.0 1.8 3.0 1.6 例ãˆã°2次元データã®å ´åˆã¯ï¼Œä¸Šã®æ§˜ã«X座標ã¨Y座標を並ã¹ã¦æ›¸ãã¾ã™ï¼ŽX ã‚„Yã«èª¤å·®æ£’を付ã‘ãŸã‘れã°ï¼Œã•らã«ãれらã®ã‚«ãƒ©ãƒ を並ã¹ã¦æ›¸ãã¾ã™ï¼Žãƒ—ãƒãƒƒ トã™ã‚‹æ™‚ã«ã©ã®æ•°å€¤ã‚’使ã†ã‹ã‚’指定ã™ã‚‹ã®ã§ï¼Œã‚«ãƒ©ãƒ ã®é †åºã¯ã©ã†ãªã£ã¦ã„㦠もã‹ã¾ã„ã¾ã›ã‚“.1カラム目をX座標,2カラム目をY座標ã«ã—ãŸã¨ã㯠gnuplot> plot "test.dat" using 1:2 ã®ã‚ˆã†ã«ï¼Œusingを使ã£ã¦gnuplotã«æãカラムを教ãˆã¾ã™ï¼Žusingを使ã‚ãªã„ ã¨ï¼Œè‡ªå‹•çš„ã«1カラム目をX,2カラム目をYã«ã—ã¦ãƒ—ãƒãƒƒãƒˆã—ã¾ã™ï¼Ž Y座標ã«èª¤å·®æ£’を付ã‘る方法ã¯2ã¤ã‚りã¾ã™ï¼Ž1ã¤ã¯ Y±Z ã®ã‚ˆã†ã«Yã‚’ ä¸å¿ƒã«ä¸Šä¸‹ã«Zã®æ£’を付ã‘ã‚‹å ´åˆï¼Žã‚‚ã†ä¸€ã¤ã¯ Yã®ç¯„囲[Z1,Z2]ãŒæ±ºã¾ã£ã¦ã„ã‚‹ å ´åˆã®ã‚ˆã†ã«ä¸Šä¸‹ã®æ£’ã®é•·ã•ãŒç•°ãªã‚‹å ´åˆã§ã™ï¼Žå‰è€…ã®ãƒ‡ãƒ¼ã‚¿ãƒ•ァイル ã«ã¯3ã‚«ãƒ©ãƒ ã®æ•°å€¤ï¼Œå¾Œè€…ãªã‚‰4カラム必è¦ã§ã™ï¼Ž # X Y Z 1.0 1.2 0.2 2.0 1.8 0.3 3.0 1.6 0.2 ![]() # X Y Z1 Z2 1.0 1.2 0.8 1.5 2.0 1.8 0.3 2.3 3.0 1.6 1.0 2.1 ![]() ãれãžã‚Œã‚’プãƒãƒƒãƒˆã™ã‚‹ã¨ãã¯ï¼Œ gnuplot> plot "test.dat" using 1:2:3 with yerrorbars gnuplot> plot "test.dat" using 1:2:3:4 with yerrorbars ã®æ§˜ã« using ã®å¾Œã®æŒ‡å®šãŒå¤‰ã‚ã‚‹ã ã‘ã§ã™ï¼Ž 表示ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã®å½¢å¼ã«ã‚ˆã£ã¦ï¼Œãƒ‡ãƒ¼ã‚¿ã‚«ãƒ©ãƒ æ•°ã‚„usingã®æŒ‡å®šãŒå¤‰ã‚りã¾ã™ï¼Ž 2次元データã®å ´åˆã®ã“れらを以下ã«ã¾ã¨ã‚ã¾ã™ï¼Ž
3次元ã®ãƒ‡ãƒ¼ã‚¿3次元データã¯(X,Y,Z)ã®çµ„ã«ã—ã¦ä¸Žãˆã¾ã™ï¼Žãƒ‡ãƒ•ォルトã§ã¯ï¼Œ3次元空間㫠点を表示ã—ã¾ã™ï¼Žwith linesã®ã‚ªãƒ—ションã§ç·šã‚’æãよã†ã«ã—ãŸå ´åˆï¼Œ データã®ä¸Žãˆæ–¹ã«ã‚ˆã£ã¦ï¼Œ3次元空間ã«ç·šã ã‘ã‚’æãã‹ï¼Œé¢(ã¤ã¾ã‚Šç¸¦æ¨ªã®æ ¼å) ã‚’æãã‹ãŒå¤‰ã‚りã¾ã™ï¼Žä¾‹ã¨ã—ã¦ï¼Œæ¬¡ã®ã‚ˆã†ã«4ã¤ã®ãƒ–ãƒãƒƒã‚¯ã«åˆ†ã‹ã‚ŒãŸãƒ‡ãƒ¼ タを考ãˆã¾ã™ï¼Žãƒ–ãƒãƒƒã‚¯é–“ã¯1行ã®ç©ºè¡Œã§åˆ†ã‘られã¦ãŠã‚Šï¼Œå„ブãƒãƒƒã‚¯ã®X,Yã® æ•°ã¯ç•°ãªã£ã¦ã„ã¾ã™ï¼Žã“ã®å ´åˆï¼Œgnuplotã¯æ ¼åã‚’æã‹ãšã«ç·šã ã‘を表示ã—ã¾ ã™ï¼Ž # X Y Z 0 0 0 0 1 1 0 2 4 0 3 9 0 4 16 0 5 25 1 0 1 1 1 2 1 2 5 1 3 10 1 4 17 2 0 4 2 1 5 2 2 8 2 3 13 3 0 9 3 1 10 3 2 13 gnuplot> splot "test3d.dat" using 1:2:3 with lines ![]() 次ã«ï¼ŒXYã®æ•°ã‚’ãã‚ãˆã¦ã¿ã¾ã™ï¼Ž # X Y Z 0 0 0 0 1 1 0 2 4 0 3 9 0 4 16 0 5 25 1 0 1 1 1 2 1 2 5 1 3 10 1 4 17 1 5 26 2 0 4 2 1 5 2 2 8 2 3 13 2 4 20 2 5 29 3 0 9 3 1 10 3 2 13 3 3 18 3 4 25 3 5 34 ![]() ã“ã®æ§˜ã«ï¼Œç¸¦æ¨ªã®æ ¼åãŒå…¥ã‚Šã¾ã™ï¼Žä¸Šã®ä¾‹ã§ã¯ï¼Œå„ブãƒãƒƒã‚¯ã§ã®Y座標ãŒåŒ ã˜å ´åˆã§ã—ãŸãŒï¼Œãƒ–ãƒãƒƒã‚¯ã®Y座標ãŒç•°ãªã£ã¦ã‚‚,å„ブãƒãƒƒã‚¯å†…ã®ç‚¹ã®æ•°ãŒåŒ ã˜ãªã‚‰æ ¼åãŒæã‹ã‚Œã¾ã™ï¼Žã“れらã®ãƒ‡ãƒ¼ã‚¿ã¯ã‚°ãƒªãƒƒãƒ‰ãƒ‡ãƒ¼ã‚¿ã¨ã—ã¦æ‰±ã‚れã¾ã™ï¼Ž gnuplotãŒç‰é«˜ç·šã‚’æã„ãŸã‚Šï¼Œéš 線処ç†ã‚’ã™ã‚‹ã®ã¯ï¼Œã“ã®ã‚°ãƒªãƒƒãƒ‰ãƒ‡ãƒ¼ã‚¿ã«å¯¾ ã—ã¦ã§ã™ï¼Žè©¦ã—ã«ä¸Šã®ãƒ‡ãƒ¼ã‚¿ã®æœ€å¾Œã®ãƒ–ãƒãƒƒã‚¯ã®Y座標ã ã‘ã‚’2å€ã™ã‚‹ã¨ï¼Œæ¬¡ ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ï¼Ž ![]() å„ブãƒãƒƒã‚¯ã®ç‚¹æ•°ãŒåŒã˜ã§ã‚‚æ ¼åã‚’æããŸããªã„å ´åˆã¯ï¼Œå„ブãƒãƒƒã‚¯ã®é–“ã« 2行ã®ç©ºè¡Œã‚’入れã¾ã™ï¼Ž # X Y Z 0 0 0 0 1 1 0 2 4 0 3 9 0 4 16 0 5 25 1 0 1 1 1 2 1 2 5 1 3 10 1 4 17 1 5 26 2 0 4 2 1 5 2 2 8 2 3 13 2 4 20 2 5 29 3 0 9 3 1 10 3 2 13 3 3 18 3 4 25 3 5 34 ![]() matrix別ã®3次元データã®ä¸Žãˆæ–¹ã¨ã—ã¦ï¼Œè¡Œåˆ—(matrix)ã§ä¸Žãˆã‚‹æ–¹æ³•ãŒã‚りã¾ã™ï¼Ž 上ã®ä¾‹ã®æ§˜ã«ï¼ŒXYã®æ ¼åãŒå›ºå®šã•ã¦ã„ã‚‹å ´åˆã«ã¯ï¼Œã“ã¡ã‚‰ã®æ–¹ãŒãƒ‡ãƒ¼ã‚¿ãŒç°¡æ½” ã«ãªã‚Šã¾ã™ï¼Žè¡Œåˆ—ã®è¡Œ(横)ã¯X,列(縦)ãŒY軸ã«ãªã‚Šã¾ã™ï¼Ž 0 1 4 9 1 2 5 10 4 5 8 13 9 10 13 18 16 17 20 25 25 26 29 34 ã“ã®ãƒ‡ãƒ¼ã‚¿ã‚’プãƒãƒƒãƒˆã™ã‚‹ã¨ãã¯ï¼Œ using ã§ã¯ç„¡ã, matrix を用ã„ã¾ã™ï¼Žè¡Œåˆ—ã§ãƒ‡ãƒ¼ã‚¿ã‚’与ãˆã‚‹å ´åˆï¼ŒXã¨Yã®åº§æ¨™ã«ã¯è¡Œã¨åˆ—ã®ç•ªå·ãŒãã®ã¾ã¾ 入りã¾ã™ï¼Žã“ã®ä¾‹ã§ã¯ï¼ŒXã¯0〜3,Yã¯0〜5ã¨ãªã‚Šã¾ã™ï¼ŽXã¨Yåº§æ¨™ã®æ•°å€¤ã‚’与ãˆãŸã„å ´åˆã¯ï¼Œ set {x|y}tics を使ã£ã¦è»¸ã®ç›®ç››ã‚’è¨å®šã—ã¾ã™ï¼Žä»¥ä¸‹ã¯ï¼ŒXã®0〜2ã«å¯¾ã—㦠100ã‹ã‚‰300ã®æ•°å€¤ã‚’与ãˆãŸå ´åˆã§ã™ï¼Ž gnuplot> set xtics ("100" 0, "200" 1, "300" 2) gnuplot> splot "test3d.dat" matrix with lines ![]() |