【问题标题】:Matlab: Change plot axis to get the [0,0] point in the middle of the plotMatlab:更改绘图轴以获取绘图中间的 [0,0] 点
【发布时间】:2016-02-17 16:18:10
【问题描述】:

我正在尝试用 Matlab 绘制一些 2D 线。我试图让绘图显示绘图中间的 x 轴和 y 轴之间的交点,这样我就可以看到线条在负 x 范围和 y 范围内是如何进行的。

我试过axis 命令。但这只会在plot中缩放XMIN XMAX YMIN YMAX...等

谢谢!

这是我的绘图代码:

plot(AOA,y,'g-o')
hold on 
pl = plot(AOA,CLspanloading,'c-o');
 set(pl,'linewidth',2);
xlabel('Alpha')
ylabel('CL')
title('Lift Polar')
axis([-5 8 -1 1.5])
% legend('LowerCL','UpperCL','-Spanloading','Location','SouthEast')
legend('F27 Paper','Spanloading','Location','SouthEast')

【问题讨论】:

  • 为什么不axis([-8 8 -1.5 1.5])
  • 是的,这是我做错了。谢谢你的提示。这些输入确实有效

标签: matlab plot


【解决方案1】:

必须明智地使用axis 命令。 XMINXMAX 应该具有相同的值,YMINYMAX 也是如此。唯一必须更改的是符号:确实是XMIN=-XMAXYMIN=-YMAX(当然是XMAX>0YMAX>0)。

通过运行这个简单的代码

plot(1:50,1:50,'g-o')
xlabel('Alpha')
ylabel('CL')
title('Lift Polar')
axis([-8 8 -8 8]); grid on;

我明白了

现在,确定这条线并不意味着什么...它只是用于演示目的。但正如你所看到的,原点正好在情节的中间。

【讨论】:

  • 如果你想要 X 从 -5 到 7 和 Y 从 1.5 到 -0.5 你永远不会得到中间的原点,因为你的 X 轴和 Y 轴是不对称的。
【解决方案2】:

您也可以使用xlimylim 来调整当前坐标区的比例:

xlim([XMIN XMAX]);
ylim([YMIN YMAX]);

为了使轴在图中的原点居中,确保 XMIN/XMAX 的大小以及 YMIN/YMAX 的大小相同:

xlim([-XMAX XMAX]);
ylim([-YMAX YMAX]);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-02
    • 1970-01-01
    • 2018-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-08
    • 1970-01-01
    相关资源
    最近更新 更多