如何使程序更灵活
1视图(30天)
显示旧的评论
我想做一个框架,可以遵循的模式。
前,M = 4, N = 4,我会有一个4×4“x”(矩阵)
然而,这个Mg Ng框架将围绕M×N矩阵
但是我的程序不够灵活的问题是在帧设置,但我不知道如何修改……
M = 4;% \”模式和“/”模式(列)
N = 4;% \”模式和“/”模式(行)
Mg = 1;%帧尺寸(列)
Ng = 1;%帧大小(行)
一个= 0.5 [1];
b = (0.5 - 1);
为q = 1:1: M *毫克
持有在;
为w = 1:1: N * Ng
持有在;
情节(a + q, b + w,“r”)% \”模式
结束
结束
持有在;
a1 = 0.5 [1];
0.5 b1 = [1];
为q = 1:1: M *毫克
持有在;
为w = 1:1: N * Ng
持有在;
情节(a1 + q, b1 + w,“b”)%”/”模式
结束
结束
% - - - - - - - - - - - - - - - - - - - - - - - - - - frame大小
为M = 0: M: M *毫克
持有在;
x = (1.25 1.25 1.25 1.25 1.25 + M + M);
为N = 0: N: N * Ng
y = (1.25 - 1.25 1.25 - 1.25 + 1.25 N + N);
情节(x, y,“k”,“线宽”,2)
结束
结束
希望下面的无花果,M = 4;N = 4;Mg = 2;Ng = 2;
0评论
接受的答案
汤米
2020年6月26日
这是一个函数,一个地方
米
x
N
在矩形定义为Xs网格
pos
以及几行,使用这个函数来创建你的帧。
M = 8;% \”模式和“/”模式(列)
N = 8;% \”模式和“/”模式(行)
Mg = 2;%帧尺寸(列)
Ng = 2;%帧大小(行)
ax =轴(“NextPlot”,“添加”,…
“XTick”[],…
“YTick”[]);
为2 = 1:Mg
为jj = 1: Ng
pos = (ii, jj, 1, 1);
fillSquareWithXs (ax, pos, M, N)
结束
结束
函数fillSquareWithXs (ax, pos, M, N)
% ax -目标轴
% pos -广场的位置,(拉兹,增加,宽度、高度)
% M - # Xs的行
% N - # Xs的关口
%找到位置、宽度和高度的X
xco = linspace (pos (1), pos (1) + pos (3), M + 1);
公司yco = linspace (pos (2), pos (2) + pos (4), N + 1);
dx = diff (xco) / 2;
dy = diff(公司yco) / 2;
xco = xco (1: end-1) + dx;
公司yco =公司yco (1: end-1) + dy;
%绘制x
为q = xco
为w =公司yco
情节(ax, q + (dx / 2 dx / 2), w + (dy / 2 dy / 2)“r”)% \”模式
情节(ax, q + (dx / 2 dx / 2), w + (dy / 2 dy / 2)“b”)%”/”模式
结束
结束
%绘制边界
情节([pos (1), pos (1)]、[pos (2), pos (2) + pos (4)],“k”,“线宽”2);
情节([pos (1), pos (1) + pos (3)], [pos (2) + pos (4), pos (2) + pos (4)],“k”,“线宽”2);
情节([pos (1), pos (1) + pos (3)], [pos (2), pos (2)),“k”,“线宽”2);
情节([pos (1) + pos (3), pos (1) + pos (3)], [pos (2), pos (2) + pos (4)],“k”,“线宽”2);
结束