gpt4 book ai didi

matlab - subplot 是如何工作的,MATLAB 中的 subplot(121) 和 subplot(1,2,1) 有什么区别?

转载 作者:太空宇宙 更新时间:2023-11-03 19:13:00 27 4
gpt4 key购买 nike

我有点不清楚如何subplot作品。具体来说subplot(121)有什么区别和 subplot(1,2,1)在 MATLAB 中?我试图搜索 subplot文档,但我似乎找不到我要找的东西。

最佳答案

长话短说,没有区别。如何subplot作品如下:

subplot(m,n,p); %//or
subplot(mnp);

您在 subplot 中使用了三个数字. subplot放置多个 数字同一个窗口内。您可以将绘图放置在 m x n 中网格,其中 m包含行数和 n包含图中的列数。 p确定 哪里你想把你的情节放在网格内。号码 p1 增加高达 m x n , 并且图从左到右,从上到下放置。

在这种情况下,当你做 subplot(1,2,1);subplot(121); ,您想拥有 排和 两个列值的数字。最后一个数字, p=1表示您希望将绘图放置在 中左 大多数列。当您这样做时 subplot(1,2,2);subplot(122); ,这是当 p=2并且您希望将绘图放置在 中右 大多数列。

您如何使用 subplot采用以下方式:
  • 确定多少您首先需要在此窗口中绘制的行和列(即 mn )。
  • 生成空白 figure窗口
  • 对于您要创建的每个图...
  • 调用 subplot并选择您希望绘图出现的正确位置。
  • 编写必要的代码来创建你的情节,就像你只为一个占据 的情节一样。单窗口 .
  • 绘制您的数据
  • 对我们拥有的每个图重复步骤 #3,直到用完 subplot插槽。

  • 这是一个说明性示例。让我们创建一个包含 的窗口两个行和 同一窗口中的列数。因此:
    figure;
    rng(10); %// Set seed for reproducibility
    subplot(2,3,1);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('First plot');
    subplot(2,3,2);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Second plot');
    subplot(2,3,3);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Third plot');
    subplot(2,3,4);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Fourth plot');
    subplot(2,3,5);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Fifth plot');
    subplot(2,3,6);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Sixth plot');

    上面代码的作用是我们生成随机点集 100 x 1每双 xy我们将它们绘制在整个窗口内的多个位置。注意 subplot的最后一个参数线性增加,而前两个参数 保持不变 .您 必须确保您 知道 在整个窗口中您想要多少个数字 之前 你开始绘图。上面代码描述的图如下所示:

    enter image description here

    您也可以指定 向量 积分为 p .但是,如果您这样做,您 必须调用 subplot这样: subplot(m,n,p); .如 p是单个数字,则 subplot(m,n,p);subplot(mnp)会工作。

    如果您指定 p要成为一个向量,这将做的是你制作的一个图 会占用多个同一图形窗口中的空格/插槽。例如,如果您这样做了: subplot(2,3,1:3); ,这将需要一个情节和 占据你图的整个第一行 .然后,您可以在插槽 4、5 和 6 中发布更多图。换句话说:
    figure;
    rng(10); %// Set seed for reproducibility
    subplot(2,3,1:3);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('First plot');
    subplot(2,3,4:5);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Second plot');
    subplot(2,3,6);
    x = rand(100,1);
    y = rand(100,1);
    plot(x,y,'b.');
    title('Third plot');

    该图看起来像:

    enter image description here

    如您所见,我们已经占领了 第一排使用 subplot(2,3,1:3);与第一个情节。第二个图占据插槽 p=4,p=5使用 subplot(2,3,4:5); .这占据了第二行、第一列和第二列。最后,我们的最后一个图使用 subplot(2,3,6); 占据了第二行第三列。 .请记住,插槽从左到右,从上到下,以及 p不仅可以是单个数字,还可以是向量。如果你想占领 前两行两列 ,你会做 subplot(2,3,[1 2 4 5]);现在,如果你想占据整个最右边的列,你可以做 subplot(2,3,[3 6]); ,或者如果您只想要最右侧列中最顶部的位置,您可以执行 subplot(2,3,3);subplot(233); ,那么如果你想处理最后一列和右下角的最后一个位置,你可以做 subplot(2,3,6);subplot(236);
    我要确保您记住的最后一件事是,您需要确保拨打 subplot 之前 你决定展示你的情节。完成后,切换到下一个插槽并继续工作。

    希望这有帮助!祝你好运!

    关于matlab - subplot 是如何工作的,MATLAB 中的 subplot(121) 和 subplot(1,2,1) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24337813/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com