gpt4 book ai didi

matlab - 在 MATLAB 上绘制金字塔

转载 作者:太空宇宙 更新时间:2023-11-03 20:34:45 25 4
gpt4 key购买 nike

我想在 Matlab 上画这个图(没有气泡)! enter image description here

我写了下面的代码:

figure
hold on
axis equal
axis([0 20 0 10])
n = 20
n = n - 1

for y = 0:10
for x = (y+1):n
rectangle('Position',[x y 1 1],'curvature',[0 0],'facecolor',(rand(1,3)))
pause(0.05)
end
end

我在执行这段代码时得到下图:

enter image description here

我需要帮助来编写可以绘制正确图形的部分代码。

最佳答案

x 上的循环从正确的点开始,但在每次迭代时都达到最大值。

只需将循环定义 for x = (y+1):n 修改为 for x = (y+1):n-y 即可得到所需的结果结果:

for y = 0:10
for x = (y+1):n-y
rectangle('Position',[x y 1 1],'curvature',[0 0],'facecolor',(rand(1,3)))
pause(0.05)
end
end

编辑:根据你的评论,你想通过控制 n 来实现,这也是可能的,但你必须在外循环的每次迭代中递减 n ,像这样:

for y = 0:10
for x = (y+1):n
rectangle('Position',[x y 1 1],'curvature',[0 0],'facecolor',(rand(1,3)))
pause(0.001)
end
n=n-1 ;
end

关于matlab - 在 MATLAB 上绘制金字塔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26314424/

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