2014-11-10 1 views
1

나는 며칠 동안 8 개의 다른 불균등 심도의 온도 데이터를 가지고 있으며 히트 맵으로 그려보고 싶습니다. 내가 아는 한 두 가지 옵션이 있습니다. 나는 "with image"를 사용할 수는 있지만 등거리 점을 가정하므로 단지 8 픽셀의 얇은 띠를 만들거나 적절한 격자가 필요한 pm3d를 사용할 수 있습니다 (적절한 격자가 무엇인지 모르겠습니다). 나는 dgrid3d가 나를 위해 그리드를 만들 수 있다는 것을 알았지 만 그것은 어떤 이유로 든 깊이에 대한 의존성을 지운다. 누군가 제게이 행동을 설명해 주시겠습니까? 다음은 내가 사용하는 코드와 데이터입니다. https://docs.google.com/file/d/0B2TfUgjtGRVReV9ocFVvM1BKd2Mgnuplot 4.6에서 3D 데이터를 올바르게 처리하고 히트 맵을 만드는 방법은 무엇입니까?

set timefmt "%Y-%m-%d %H:%M:%S" 
set xdata time 

set view map 
set dgrid3d 

splot './Data/MO-03t_.txt' every ::2 u 1:3:4 with pm3d 

답변

1

dgrid3d당신의 데이터를 플롯되지 않습니다. 대신 2 차원 스플라인과 같은 것이 데이터에서 계산됩니다. 그런 다음 gnuplot은 (기본적으로) 10x10 행렬을 만들고 스플라인에서 보간 된 값으로 채 웁니다. 그러면이 행렬이 그려집니다.

는 그러나 나는 당신을 위해 다른 솔루션이 있습니다

set timefmt "%Y-%m-%d %H:%M:%S" 
set xdata time 

# for the nice colors 
set pm3d 

# For debugging: place ticmarks only vor values with data 
set ytics (0.02, 0.04, 0.06, 0.11, 0.31, 0.41, 0.61, 0.91) 

plot './Data/MO-03t_.txt' every ::2 u 1:3:(1800):($3<0.2?.005:0.05):4 w boxxyerrorbars fs solid lc palette 

boxxerrorbars ... lc paletteusing <x>:<y>:<deltaX><deltaX>:<z>

델타 값은 상자의 절반 너비한다 즉 그것은 음모에게 X-위한 deltaX에서 상자를 의미를; y- 델타 Y로부터 x + 델타 X;

여기에서 상자의 너비는 3600 초이고 높이는 y 값에 따라 0.1 또는 0.01입니다.

enter image description here

그러나, 여전히 상자의 높이를 향상시킬 수 있습니다 : 여기

는 결과이다.

대신 4 + 1 열로, 또한

using <x>:<y>:<xlow>:<ylow>:<xhigh>:<yhigh>:<z>

여기

6 + 1 열을 전달할 수 있고, 박스의 경계가 아닌 xy-으로부터 거리가 절대 값으로 주어진다 값.

+0

감사합니다. 아마도 스플라인을 망칠보다 나은 해결책 일 것입니다. – OlejzMaku

관련 문제