談談gnuplot(五) 座標取值範圍及刻度

2021-09-02 17:10:47 字數 1965 閱讀 1469

gnuplot> set samples 500

gnuplot> set xlabel "x"

gnuplot> set ylabel "y"

gnuplot> set title "sin(5*x) 函式影象"

這裡預設的 x 取值範圍是從 -10 到 10。我們現在希望 x 的取值範圍從 -2π 到 2π,這樣函式影象可以正好包括十個週期。橫座標取值範圍由xrange引數控制。還記得gnuplot裡面所有引數都由 set 命令控制嗎?取值範圍由方括號內的一對數表示,兩個數之間用冒號隔開:

(不要忘記,每乙個和 x 座標有關的引數,都對應有乙個和 y 有關的引數,所以縱座標的取值範圍由yrange控制。)

現在橫座標取值範圍已經符合我們的要求了,但是橫軸上的刻度並不是我們想要的。我們不想要刻度出現在整數字置上,而是希望刻度為 π 的整倍數。另外,我們還希望兩個主刻度之間 π/2 的位置有乙個分刻度,分刻度只要有刻度就可以,沒必要標出數字了。gnuplot裡面,橫軸主刻度和分刻度,分別用xticsmxtics表示(m 表示 minor)。我們試試下面的命令:

gnuplot> set xtics pi

gnuplot> set mxtics 2

gnuplot> replot

這裡的命令表示:橫軸主刻度間隔為 π,每兩個主刻度之間被分刻度分為2份。這組命令得到的影象如下:

現在刻度間隔對了,但是顯示的數字並不是我們想要的。我們希望顯示字元 π,而不是小數3.14159。其實,set xtics命令的形式並不是唯一的。我們試試下面的形式:

gnuplot> set xtics ("-2π" -2*pi, "" -1.5*pi 1, "-π" -pi, "" -0.5*pi 1, "0" 0, "" 0.5*pi 1, "π" pi, "" 1.5*pi 1, "2π" 2*pi)

gnuplot> replot

這裡 set xtics 命令直接規定了每個刻度的位置和顯示的字元。每乙個刻度對應三個引數:顯示字元、刻度位置、刻度等級。刻度等級為 0 時表示主刻度,等級為 1 時表示分刻度。對於主刻度(等級為 0 時),表示等級的引數也可以省略不寫。各個刻度的引數之間用逗號隔開。從上面的例子我們還看出,顯示字元可以為空,也就是只標刻度,不顯示字元。這組命令得到的影象如下:

現在橫軸座標已經完全符合我們要求了,我們把縱軸座標也調整一下,因為我們不需要這麼細的劃分縱軸刻度:

gnuplot> set ytics -1,0.5,1

gnuplot> replot

這裡又用了 set ytics 命令的另一種形式(再次提醒一下,xtics 和 ytics 語法是完全一樣的):後面跟了逗號隔開的三個引數。這三個引數分別表示:最小主刻度、主刻度步長、最大主刻度。影象如下:

4 談談gnuplot(十四) 第二座標軸

回首看看我們以前所有的作圖,橫座標都標示在底部,而縱座標都標示在左側。其實,在影象頂部和右側,還隱藏著一對不太引人注意的座標軸,我們可以管它們叫做 第二座標軸 平時,它們只是第一對座標軸的映象 在我們需要的時候,它們可以用來表示不同的物理量。有時候,我們會有兩組性質不同但是又相互關聯的資料,這時候我...

「北京54 座標系」轉「西安80座標系」

北京54 座標系 轉 西安80座標系 詳細教程 北京54座標系和西安80座標系其實是一種橢球引數的轉換,作為這種轉換在同乙個橢球裡的轉換都是嚴密的,而在不同的橢球之間的轉換是不嚴密,因此不存在一套轉換引數可以全國通用的,在每個地方會不一樣,因為他們是兩個不同的橢球基準。那麼,兩個橢球間的座標轉換,一...

北京54座標到西安80座標轉換小結

1 北京54和西安80是兩種不同的大地基準面,不同的參考橢球體,因而兩種地圖下,同乙個點的座標是不同的,無論是三度帶六度帶座標還是經緯度座標都是不同的。2 數位化後的得到的座標其實不是wgs84的經緯度座標,因為54和80的轉換引數至今沒有公布,一般的軟體中都沒有54或80投影系的選項,往往會選擇w...