다음과 같은 로그를 생성하는 애플리케이션이 있습니다.
14:48:16, 41.0
14:50:01, 40.0
14:54:01, 41.0
14:54:04, 40.0
14:55:10, 41.0
14:55:22, 40.0
15:00:13, 41.0
...
현재시간과 측정온도입니다. 온도가 변하면 애플리케이션은 로그 파일에 한 줄을 기록합니다.
gnuplot을 통해 온도를 표시하고 싶습니다. 다음을 시도했습니다.
set xdata time
set timefmt "%H:%M:%S"
set yrange [30:50]
set xrange ["14:40":"16:50"]
plot 'temp.csv' using 1:2 with lines
다음과 같은 그래프를 보여줍니다.
하지만 선이 수평이 되어 온도 변화에 따라 계단을 형성하고 싶습니다. 결과는 파란색 선과 유사해야 합니다.
gnuplot이 이 작업을 수행하도록 하려면 어떻게 해야 합니까? 로그 전처리를 통해 수행할 수 있지만 가능하다면 gnuplot을 통해 수행하겠습니다.
답변1
Gnuplot에는 데이터 표시를 위한 다양한 스타일이 있습니다. 이 with lines
옵션은 각 데이터 포인트를 선으로 연결합니다. 데이터를 원활하게 변경하는 데 적합합니다.
이 시점부터 다음 변화까지 유효한 시간과 값을 포함하는 데이터를 히스토그램으로 그릴 수 있습니다. with steps
이 옵션을 지정 하면 Gnuplot이 히스토그램을 그립니다. 따라서 완전한 명령은 다음과 같습니다.
plot 'temp.csv' using 1:2 with steps
좋은 문서와 예제는 다음 위치에 있습니다.http://lowrank.net/gnuplot/intro/style-e.html.