2015-07-13 127 views
0

如果設置在與該繪圖命令的PDF終端特定yrange和情節:gnuplot的:繪製數據點的誤差棒外面繪製範圍

plot "data.dat" u 1:4:5:6 w yerrorbars pt 6 ps 0.5 t "R_t" 

errorbars屬於數據點yrange外部,但端在yrange內沒有顯示。 我該如何強制gnuplot來繪製它們。我已經嘗試過「set clip one/two」

+0

如果您不知道錯誤欄的這一部分屬於哪個數據點,那麼您無法做到這一點, 。 – Christoph

+0

感謝您的信息。如果有意義取決於情況。我無法顯示所有數據點,因爲圖表中有趣的部分會變小,但是有可見的誤差線表明繪圖範圍之外存在測量值是有意義的。 – MaVo159

回答

1

我發現的唯一解決方法是繪製數據3次,一次爲中心點,一次爲錯誤欄的每一側。 使用「 - 」作爲錯誤條的符號,並使用它們自己的「錯誤條」繪製一條直線到中心點。

0

您可以使用多槽來實現這一點。

將您的繪圖設置爲零margins,因此軸位於畫布的邊界上,並且第一個繪圖的所有ticsborders的開關均已切換。

再次打開座標軸,抽搐等,並使用set sizeset origin設置在正確位置的空圖。你必須做一些數學計算確切的位置。

+0

如果我正確理解你的意思,我可以繪製與頁面高度相等的yrange內部的東西(繪圖邊界之外)。這不是我想要達到的。我想要繪製我的yrange中的錯誤條,即使數據點在yrange之外。 – MaVo159

+0

您可以通過用白色矩形('set object rect')套印它來擦除範圍之外的部分。但是,如果gnuplot不在當前範圍內,gnuplot從不打印點或錯誤條。只有連接線('帶有linepoint')的繪圖可以用'set clip'控制。 – Karl

0

您可以修改您的數據文件:由於數據點的中心值超出了繪圖範圍,因此您可以將其設置爲等於在您的繪圖中仍然可見的錯誤欄的終點。

例子:

plot range: set yrange[-2:2] 

data point: 1, -3, -1, -4 (x, y, ylow, yhigh) 

set data point to: 1, -1, -1, -4 

注意:既然你編輯您的數據文件,你應該

  1. 使原始數據文件的副本

  2. 要非常小心編輯文件時

  3. 請記住,當更改繪圖範圍以使數據點的中心值變爲可見時,必須使用原始數據點。否則,您將看到正確的錯誤欄,但不會繪製中心值。 (這相當於將「點類型」設置爲0)