Why is auto-scaling not following data on contour-plot?
1 次查看(过去 30 天)
显示 更早的评论
I am creating two colour plots from matrix values, one with the heatmap(...) function and one with the contourf(...) function. The results are these:
And the code used to generate them is this:
xvalues = {'20 C','30 C','40 C','50 C','60 C','70 C','80 C','90 C'};
yvalues = {'80 %','60 %','40 %'};
figure(1)
c=heatmap(xvalues,yvalues,heat)
c.Colormap=parula;
figure(2)
contourf(heat)
set(gca, 'YDir', 'reverse')
set(gca,'xticklabel',xvalues)
set(gca,'yticklabel',yvalues)
colorbar
The matrix heat consists of 3 rows and 8 columns:
No tick-placing is done in the code. Only tick-labelling (and the issue happens with and without the labelling).
As you can see on the plots, the heatmap correctly auto-generates 8 ticks on the x-axis (due to the 8 columns) and 3 ticks on the y-axis (due to the three rows).
But not on the contour plot - there only the x-axis is correctly ticked with 8 ticks. And therefore my labelling fits the tick number. On the y-axis many ticks are auto-generated so my three labels are simply duplicated.
Why does the auto-generation of y-ticks not fit the 3 rows?
3 个评论
Adam
2018-4-5
Yes, heatmap does its own things and is a different kind of plot to image plots or contour plots.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!