Contour a log fuction with n contour levels

I would like to create a contour of a log function with a multiple contour levels, but when N is included the figure turns out blank, the following is an example:
[i,j] = meshgrid(-50:1:50,-50:1:50);
for x=1:size(i,1)
for y=1:size(j,1)
R(x,y) = log(i(x,y)*j(x,y));
end
end
contour(R,10);

Réponses (1)

Honglei Chen
Honglei Chen le 16 Avr 2012
There are negative numbers in log so the result may be complex. In addition, there is zero in log, so log(0) gives infinity, which cannot be dealt by contour. Are you sure you want log on such ranges?
BTW, you could have written
R = log(i.*j);
to save the two loops.

3 commentaires

Richard Brown
Richard Brown le 16 Avr 2012
or even better R = log(i .* j)
(no loops)
Jhon
Jhon le 16 Avr 2012
actually no, i can manage the range to be strictly higher than 0
Guo
Guo le 16 Avr 2012
I agree with Richard,Matrix computation is the dominant feature of matlab.Matlab canbe more efficient in this form.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Contour Plots dans Centre d'aide et File Exchange

Tags

Question posée :

le 16 Avr 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by