2016-08-06 3 views
0

대수 공간에서 곡선을 그려보고 싶습니다. 내 문제는 이것입니다 : Matlab의 로그 스케일은 시작점과 끝점 인 일부 데이터 포인트를 무시합니다. 이 문제를 해결하려면 어떻게해야합니까? 데이터와 Matlab 수치를 첨부했습니다.대수 눈금으로 곡선 그리기

감사합니다. Curve

여기 곡선을 플롯하기 위해 필요한 데이터를 다운로드 할 수 있습니다 : 당신이 당신의 그림에서 볼 수 있듯이 https://www.dropbox.com/s/fmaut5tj37ag5ps/matlab.rar?dl=0

+1

질문을 게시 할 때 링크를 사용하지 마십시오. 질문에 맞는 [mcve]로 데이터를 축소하십시오. 또한 이미지 링크 앞에 '!'가 있어야만 인라인됩니다 (예 :'[Curve] [1]'이 아니라'! [Curve] [1]') – Tibrogargan

+0

인덱스 1의'x'는'0'입니다 그 후, 인덱스 993에서 1004까지 11 개의 플롯 포인트가 있습니다.'log' (0) = -Inf'의 값에 대해'x'가 어디에 표시 될 것으로 예상합니까? 플롯 명령이 예상대로 작동하는 것 같습니다. – Matt

+1

답변 해 주셔서 감사합니다! 규모가 대수가 아닌 것 같습니다. 그래서 xepect (0,1) 포인트가 아닌 로그 (1) 또는 로그 (0)를 볼 수 있습니다. –

답변

1

로그 배율은, 많은 사람에게 작은 기지에서 10 개 지수 값을 사용합니다. 음수 값은 로그를 사용하여 표현할 수 없으므로 무시됩니다. "0"값은 그래프의 "무한"왼쪽에서 발생하므로 본질적으로 무시됩니다.

"스케일은 로그가 아닌 값입니다"라고 동의하는 동안 로그 축에 0 점을 그릴 수있는 방법이 없습니다. 축 점이 음의 무한대에 해당하기 때문입니다 (즉 축에 enter image description here).

Btw, 나는 데이터에 대한 더 좋은 플롯이 semilogx라고 생각합니다. 이것은 y 축의 0 값이 좋고 그래프가 더 읽기 쉽게 보이기 때문에 하나 이상의 데이터 포인트를 보존합니다.

enter image description here