Matlab 理解符号功能
我试图理解Matlab 理解符号功能,matlab,plot,matlab-figure,axes,logarithm,Matlab,Plot,Matlab Figure,Axes,Logarithm,我试图理解符号学函数,该函数通常用于在MATLAB中绘制数据 正如MATLAB帮助部分中的定义所述: 符号学(Y)使用Y-轴的基数10对数标度和x-轴的线性标度创建绘图。如果Y包含实数,它将绘制Y的列与它们的索引 以下代码应生成相同的绘图: y1 = 1:100; figure semilogy(y1, 'linewidth', 2); x2 = 1:100; y2 = log10(x2); figure plot(x2, y2, 'linewidth', 2); 但正如我们所看到的,在不
符号学
函数,该函数通常用于在MATLAB中绘制数据
正如MATLAB帮助部分中的定义所述:
符号学(Y)
使用Y
-轴的基数10对数标度和x
-轴的线性标度创建绘图。如果Y
包含实数,它将绘制Y
的列与它们的索引
以下代码应生成相同的绘图:
y1 = 1:100;
figure
semilogy(y1, 'linewidth', 2);
x2 = 1:100;
y2 = log10(x2);
figure
plot(x2, y2, 'linewidth', 2);
但正如我们所看到的,在不同的绘图中,y轴的限制是不同的。有人能澄清我的疑问吗?在第一个例子中,轴被设置为执行对数运算,并自动漂亮地打印标签和网格。因此,这些数字仍然是绝对值。但它们的标记是根据对数轴。在第二个例子中,您只是用一个线性轴绘制对数函数。虽然看起来很相似,但情节却不一样 也许打开电网可以让你更好地了解它。看看两个图中8或80的位置
当您使用符号学时,您仅更改值的显示方式,而如果手动执行
日志
操作,您现在有了不同的值
如果我们查看符号学.m
,我们可以看到以下内容:
因此,如果不使用符号学,您可以得到相同的结果:
plot(y1, 'linewidth', 2);
set(gca,'YScale','log');
请注意,轴限制实际上具有相同的含义:在右边的图表中,您得到0…2
,在左边,您得到10^[0…2]
plot(y1, 'linewidth', 2);
set(gca,'YScale','log');