MATLAB:如何绘制具有可变边/顶点颜色的网格?

时间:2017-11-29 21:15:57

标签: matlab plot mesh

背景:我正在使用2-D FD方法求解麦克斯韦方程。在这些方法中,最好定义单元边缘上的电场和单元中心上的H字段。

现在,假设我有一个4x4网格,有16个单元格,20个垂直边缘和20个水平边缘。

我有16个H值存储在矩阵中。这可以在pcolor中绘制而没有任何问题。

但是,我还有20个存储在4x5矩阵中的垂直边上的电场的值,以及存储在5x4矩阵中的水平边上的电场的20个值。

问题:我想绘制一个图形,显示网格的线根据电子场值着色的网格。

我可以通过计算节点位置和线距离并绘制for循环中的每一行来拼凑一种方法,但我想知道是否有更好的方法。

最小例子:有人要求提供一个最小的例子,所以这里是,但它并不是真的:

Ev = randi([0 1], 5,4); %vertical edges
Eh = randi([0 1], 4,5); %horizontal edges

如何在网格上绘制垂直边(Ev)和水平边(Eh)(假设每条线的长度是单位长度)?我想为每个线段着色,如果它为0则为黑色,如果为1则为白色。

干杯

0 个答案:

没有答案