我有一个数组x=1:N
。我希望可视化由x
确定的曲线的中心部分,仅说明xx=N/2-M/2:N/2+M/2
部分。我知道我可以做到这一点,如果我绕一切(N和M可以是任何东西),但这使得一个简单的索引操作相当冗长和不可读。有更优雅的方式吗?
答案 0 :(得分:2)
调整你的思维,用'半径'表示间隔的大小(称之为m
)而不是'直径'(M
),瞧
xx = median(x)-m:median(x)+m
这样更优雅,不是吗!既然你可能想要各地的整数尝试
xx = floor(median(x)-m):ceil(median(x)+m)
答案 1 :(得分:2)
MATLAB在整数类型上隐式完成舍入,因此您只需将M
和N
转换为整数:
N = uint32(N);
M = uint32(M);
xx = N/2-M/2:N/2+M/2;