使用Matplotlib绘制三角形网格图

实际上三角形测量主要来自在空间位置处理问题中,为了显示点和邻点关系的距离,三角形测量图是1个很方便的方式来代表地图。而在Matplotlib中提供了一些对三角形测量的支持。

>>> import numpy as np  
>>> from matplotlib import pyplot as plt  
>>> from matplotlib import tri  
>>> data = np.random.rand(100,2)  
>>> triangles = tri.Triangulation(data[:,0],data[:,1])  
>>> plt.triplot(triangles)  
[<matplotlib.lines.Line2D object at 0x7fe3b40bb790>, <matplotlib.lines.Line2D ob[<matplotlib.lines.Line2D object at 0x7fe3b40bb790>, <matplotlib.lines.Line2D object at 0x7fe3b40bb910>]  
>>> plt.show()

其结果如下所示:

三角形网格图

可以看到其结果为1个三角形网格的云。
在这里,我们导入matplotlib中的tri模块,它提供了函数来计算点的三角形测量。在这里我们生成了100个随机的点。之后我们计算三角形点并将其存储在triangles变量中。
最后我们调用pyplot模块的triplot函数简单的使用三角形作为输入并显示最终的三角形结果。

参考书籍:

《Matplotlib Plotting Cookbook》

若文章对您有帮助,请打赏1块钱。您的支持,可以让我分享更多精彩的文章。转载请注明来源


知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。