Something is not right with bar plot when some values are very very high and it is required to limit y values so that other values can be seen.
highValue=10E15;
y = [2 2 3*highValue; 2 5 6*highValue; 2 8 9*highValue; 2 11 12*highValue];
bar(y)
Now I want to limit yvalue so that I can see other values
ylim([0 10])
Now the results is:
No issue when highValue=10E14. Is this a bug in bar plot?

4 commentaires

dpb
dpb le 22 Avr 2020
Duplicated here w/ R2019b. Which release are you using?
Does look like something went wrong in rendering, agreed.
Durga Lal Shrestha
Durga Lal Shrestha le 22 Avr 2020
I tested with 2019a, 2019b and 2020a, the issue persistent with all these versions.
dpb
dpb le 22 Avr 2020
R2014b doesn't go outside the box boundaries but generates the same diagonal slash on the second group...
Adam Danz
Adam Danz le 22 Avr 2020
Modifié(e) : Adam Danz le 22 Avr 2020
Error reproduced in r2020a.

Connectez-vous pour commenter.

Réponses (1)

Muhammad Usman
Muhammad Usman le 22 Avr 2020

0 votes

I suggest you to use two additional lines of code
highValue=10E15;
y = [2 2 3*highValue; 2 5 6*highValue; 2 8 9*highValue; 2 11 12*highValue];
bar(y)
set(gca,'YScale','log');
grid on;

4 commentaires

dpb
dpb le 22 Avr 2020
Nice workaround to get around the display problem...
Durga Lal Shrestha
Durga Lal Shrestha le 22 Avr 2020
Thanks for the suggestion. But my data has also negative values, so log scale does not work.
Durga Lal Shrestha
Durga Lal Shrestha le 22 Avr 2020
I found this type of issue with plot function as well.
dpb
dpb le 23 Avr 2020
Is there really some mandatory reason to have such a large highvalue value, anyway, in reality?
Doesn't seem realistic use case, somehow...

Connectez-vous pour commenter.

Tags

Commenté :

dpb
le 23 Avr 2020

Community Treasure Hunt

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

Start Hunting!

Translated by