X11

gnuplot - 有沒有辦法讓 1 變數實時繪圖顯示帶有標籤的最新值?

  • August 19, 2017

我正在使用一個數據記錄系統,它每 2 分鐘向名為 today.dat 的數據文件添加一個值。

以下是數據的樣子:

在此處輸入圖像描述

這是我使用的 gnuplot 程序,其中 X 是時間,Y 是電壓。它還繪製了一些顯示恆定臨界值的線:

在此處輸入圖像描述

你會注意到我在 plot 命令之後使用了以下兩個命令:

pause 30
reread

這使情節變得生動,並在我的太陽能發電站進入時向我顯示電池組上的電壓讀數。

劇情很棒。它會自動更新,因此顯示接近實時。

這是一個例子:

在此處輸入圖像描述

所以我的問題是:

有沒有辦法讓螢幕上的文本框在圖表更新時僅顯示最新的電壓讀數?

這是一個非常有用的答案,取自上面@steeldriver 的評論。

有沒有辦法為 gnuplot 中的最後一個條目添加標籤?

摘抄:

如果您在 unixoid 系統上,您可以使用 tail 從文件中提取最後一行,並以您想要的任何方式單獨繪製它。舉一個簡單的例子:

plot\
"data.dat" w l,\
"< tail -n 1 data.dat" u 1:2:2 w labels notitle

這將用線條繪製整個 data.dat,用標籤繪製最後一個點,標籤描繪了值。

由 Wrzlprmft 發表(給你的小費)

這不是我所期望的,但它確實可以完成這項工作。我必須弄清楚 1:2:2 的東西,並將其更改為 2:($3):3

它與我的繪圖命令相同,但我使用第三個標籤變數進行第二次繪圖。

這是一個問答,可以解釋原因:

標記單個數據點 gnuplot

這是一個冗長的解釋,基本上說它是 x:y:l

解釋 x:y:l – x 是時間,y 有 ( $ 3) because it is being used as the numeric value. l is just a literal of column 3. Hence 2:( $ 3):3 以我為例。 notitle在那裡,所以它不會出現在傳說中。

引用自:https://unix.stackexchange.com/questions/374712