Negatives values are ignored. Why?

17 views (last 30 days)
Alex
Alex on 18 Aug 2011
Dear all, I am plotting few values that go from close to 0 to something large, so I want to the y axis to become in log scale.
boxplot(A','symbol','','extrememode','compress','labels',[1 2 3 4 5 6 7],'whisker',0); set(gca,'YScale','log') ; Warning: Negative data ignored
which I can understand as >> min(min(A))
ans =
0.0015
>> log(min(min(A)))
ans =
-6.4852
what do you think from your experience I should do for that? B.R Alex

Answers (1)

Daniel Shub
Daniel Shub on 18 Aug 2011
If I understand boxplot correctly, it is not just plotting A, but it is also plotting errorbars and boxes. It is possible that the errorbars/boxes/whiskers become negative. I do not think this can happen with whisker 0 option. It might be that extrememode compress causes some of your data to become negative.
  3 Comments
Alex
Alex on 19 Aug 2011
I tried even this
ylim([-100 100]);
>> set(gca,'YScale','log');
Warning: Negative data ignored
which makes all the boxplots centered and pretty tine
I keep even getting the same warning...
Oleg Komarov
Oleg Komarov on 19 Aug 2011
The natural log's domain is R^plus, i.e. > 0, and log(0) is -inf. You can't supply negative values to log.
http://en.wikipedia.org/wiki/Natural_logarithm

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!