我正在做help pages和help forums要求我做的事情 - 老实说我不明白为什么这不起作用 .
因此,我在这里 .
我的绘图代码(不需要知道函数 - 代码非常强烈 . 但是,它是一个带有效数据和范围的2D轮廓图 - 轴是问题,而不是图形):
contourf(time,f,power,levels)
colormap(jet(levels))
set(gca,'XTickLabelMode','manual')
set(gca, 'XTick', 0:23);
set(gca, 'XTickLabel', {'0';'1';'23'});
xlabel('Time (UT)')
ylabel('Frequency (Hz)')
caxis([0,8])
axis([0 StopTime 0 0.1])
任何帮助将不胜感激!
3 回答
解决了:
我意识到'XTick'依赖于我用来定义x轴的数组的当前值 . 我不能只假设matlab将均匀地分隔一个新数组(至少,如果有办法做到这一点,我不知道) . 所以,由于我的X轴上有85,680个数据点,我只需将其重新调整为:
故事的道德:Matlab不允许你使用这两个函数任意地将新轴贴在旧轴上 .
你有一个最终的
axis([0 StopTime 0 0.1]))
命令,通过创建一个新的新轴来清除你的情节 . 这就是为什么你现有的所有情节都消失了 . 尝试删除它:现在问题变成了:你的蜱是否合理地放置在你所代表的数据上?在不知道数据的情况下,我无法为您解答这个问题 . 所以球现在在你的球场上 . ;)
您可以使用单元格数组来定义
ticks
和tick-labels
,然后将它们与set
函数调用一起使用,以使其更加优雅 -