MATLAB一些画图时遇到的问题
记录一些我拿MATLAB画图时遇到的小问题:
问题一:
数据需要从上到下翻转?
解决方案:nir_ = Nir_data(end:-1:1,:);
问题二:
画波数图时,给出的数据excel表格第一列为波数值,且不均匀?
解决方案:提取第一列数据,以第一列数据为横坐标画图
问题三
坐标轴设置:坐标设置为对数或线性?
方法一.画完图后在编辑那块选择坐标属性将X轴刻度改为对数或线性
方法二.设置代码set(gca,‘xscale’,‘log’)或set(gca,‘xscale’,‘linear’)
但有时候选择了线性,25000会表示位2.5*10^4,想要表示为25000,如何做?
这里可以用这个代码:set(gca,‘xticklabel’,get(gca,‘xtick’)); %消除科学计数法
问题四:画波数图时,横坐标前面大后面小,如何反转坐标?
解决办法:set(gca,‘XDir’,‘reverse’);
**问题五:**波数范围为15000:3000,不想要0点?
解决办法:设置坐标范围
axis([3000, 15000, -0.5, 4]) %横轴和纵轴
set(gca,‘xtick’, 3000:3000:15000) %为画图方便,规定细粒度为3000
还有,将坐标设置、消除科学计数法和坐标反转放在代码最后
即
axis([3000, 15000, -0.5, 4])
set(gca,'xtick', 3000:3000:15000)
set(gca,'xticklabel',get(gca,'xtick')); %消除科学计数法
set(gca,'XDir','reverse');