Negatives values are ignored. Why?

11 次查看(过去 30 天)
Alex
Alex 2011-8-18
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

回答(1 个)

Daniel Shub
Daniel Shub 2011-8-18
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 个评论
Alex
Alex 2011-8-19
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 2011-8-19
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

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by