Histogram's legend is broken
11 次查看(过去 30 天)
显示 更早的评论
The legend box where line style ought to come is broken and is showing blank instead. How do I make it work? I restarted matlab and tried to disable and re-enable legends using Insert > Legend in the menu strip above the histogram, but no good. Here is the image:-
Thanks in advance.
2 个评论
Sreeram
2024-10-14
I am assuming that you are using "histogram" with DisplayStyle="stairs". However, I could not reproduce this issue in MATLAB R2024b:
histogram(randn(20,1), DisplayStyle="stairs")
legend
If you could share the reproduction steps and the MATLAB release, it will help the community to look into and guide you better.
采纳的回答
Sreeram
2024-10-14
I was able to reproduce this issue in MATLAB R2024a and it appears like a bug to me. You may fix this by either upgrading to MATLAB R2024b or downgrading to MATLAB R2023b or before.
If it is not feasible, you may work around the issue in MATLAB R2024a itself based on these examples:
1. Change the “DisplayStyle” to “bar” momentarily:
h = histogram(randn(100,1),DisplayStyle="stairs");
legend
h.DisplayStyle = "bar";
pause(0.01) % The pause is necessary.
h.DisplayStyle = "stairs";
2. Use a hidden plot to create a custom legend:
h = histogram(randn(100,1),DisplayStyle="stairs");
hold on;
hidden = plot(NaN, "SeriesIndex", h.SeriesIndex);
legend(hidden)
hold off
I hope it helps!
4 个评论
DGM
2024-10-15
Hm. I guess that's a good point.
I'm running R2019b, so I couldn't really test the problem.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!