2017-09-07 2 views
0

나는 NaN 일부 수치 (double) 인 값을 포함하는 시리즈 y을 가지고 있습니다.Datetick은 플롯의 NaN을 고려합니다.

이 시리즈에는 과 관련된 벡터가 있으며 datenum 개의 날짜가 포함되어 있습니다.

예 :

y=[NaN(5,1); rand(10,1)] 
d=now-14:now 

내가 실행하면 :

내가 원하는 그래프를 얻을 수
plot(d,y) 

; NaN 관측치가 추출됩니다.

plot(d,y); datetick 

다음 내 그래프는 처음부터 시작하고 (yNaN 경우에도) 계정으로 모든 관찰을한다 : 나는 실행 그러나

.

어떻게 이런 일이 일어나지 않도록 할 수 있습니까?

+1

왜 NaN 만 제거하지 않는가? (matlab의 일종의 버그/불일치 인 것 같다 .Naveh의 해결 방법이 적절하다고 생각한다.) – buzjwa

답변

2

the documentation에서 현재 축 제한을 유지하는 쉬운 방법 (아래 참조)이 있음을 알 수 있습니다.

plot(d,y); 
datetick('keeplimits'); 

'keeplimits' 인수는 날짜에 눈금 값을 변환하는 동안 x 축 제한을 유지, 제안 정확히 않습니다. 눈금 표시 위치를 유지하려면 'keepticks'을 전달할 수도 있습니다.


당신이 설명하는 동작은 문서에 반하는 것 같다

datetick 최소 지정된 축의 최대 한계에 따라 라벨 형식을 선택합니다. 나는 값이 동일하게 유지 기대하지만, 한계가 NaN 포인트가 포함되어 의미 내부적으로 처리하는 방법에 대해 뭔가가 분명이이 문장에서

. 최소한 우리는 간단한 해결 방법을 제공 받았다.

+1

일관성있는 동작 .detetick이 수행하는 동안 기본 x 제한은 'NaN'을 고려하지 않지만, 적어도 'keeplimits'는 수동으로 범위를 설정할 때 유용합니다. – m7913d