为什么在MATLAB中绘制的圆显示为椭圆?

为什么在MATLAB中绘制的圆显示为椭圆?,matlab,plot,geometry,Matlab,Plot,Geometry,我想知道在MATLAB中如何绘制一个圆并正确地显示它,而不是默认地将其显示为椭圆。我猜这与轴上的局部坐标系有关。您可以使用该命令将每个轴上的数据单位设置为相同。下面是一个例子: theta = linspace(0, 2*pi, 100); subplot(121); % Show the default plot plot(cos(theta), sin(theta)); title('Default axes settings'); subplot(1

我想知道在MATLAB中如何绘制一个圆并正确地显示它,而不是默认地将其显示为椭圆。我猜这与轴上的局部坐标系有关。

您可以使用该命令将每个轴上的数据单位设置为相同。下面是一个例子:

theta = linspace(0, 2*pi, 100);
subplot(121);                     % Show the default plot
plot(cos(theta), sin(theta));
title('Default axes settings');
subplot(122);                     % Show a plot with equal data units
plot(cos(theta), sin(theta));
title('Equalized tick spacing');
axis equal;

除了按建议使用轴相等功能外,还可以使用以下功能关闭拉伸填充功能:

甚至将轴纵横比明确设置为:

daspect([1 1 1])
daspect([1 1 1])