2010-08-11 17 views
10

Czy jest możliwe utworzenie wykresu w programie Matlab, który faktycznie nie pobiera dzienników wartości? Planuję szeroki zakres wartości i kiedy próbuję zrobić z nich wykres, te poniżej 1 stają się ujemne. Chciałbym tylko, aby wykreślić wartości w skali logarytmicznej bez pobierania ich dzienników.Jak utworzyć wykres logu w programie Matlab

Odpowiedz

15

Tak, jest to możliwe. Użyj the loglog command.

Przykład ze strony Mathworks:

x = logspace(-1,2); % generate a sequence of points equally spaced logarithmically 
loglog(x,exp(x),'-s') 
grid on 

enter image description here

Jeśli nie chcesz być zarówno osie skali logarytmicznej, użyj semilogx or semilogy.

1

Więc, chcesz wykreślić liner dane na logarytmicznych osi? Możesz eksponować wartości przed użyciem wykresu dziennika. W ten sposób punkt p = (10,3) będzie działał w pozycji x = 10.

20

Alternatywnie, ustaw (gca, 'XScale', 'log'), jeśli masz już swój wątek.

Powiązane problemy