如上图。怎样才能让画面更流畅。或者缩小y轴的范围。
数据来自二维矩阵。
然后我用plot('data')
请随时提出任何想法。
平滑线的一种方法涉及样本点之间的数据的非线性插值。当您这样做时plot(x,y,'o-')
,MATLAB 会自动绘制一个连接点样式的分段线性系列。但是,您可以在没有自动连接线的情况下进行绘图,仅使用数据点的标记,并绘制您自己的平滑序列(或仅绘制平滑序列!)。例如,从默认连接线开始:
x = 1:10;
y = rand(numel(x),1);
plot(x,y,'r-o')
现在,生成“平滑”数据的一种方法是对数据点之间的曲线(不再是直线)使用非线性插值。我们可以使用interp1
插值'cubic'
方法来做到这一点:
xx = 1:0.1:10; % line is inherently higher sample rate
yy = interp1(x,y,xx,'cubic');
plot(x,y,'bo',xx,yy,'k-')
这真正归结为根本不是 MATLAB 技巧 -只是绘制插值数据。但是,问问自己,如果只绘制实际数据会更好。这样做是有充分理由plot
的!
关于 y 轴范围,您可以在不触及 x 轴的情况下设置最小值和最大值ylim
,如下所示,
ylim([yMin yMax])