2017-05-19 132 views
1

目前,我正在使用tripcolor函數進行三維點數據的三角測量和着色。我得到的是一幅地圖數據。還有更多我想使用的數據。我也有一個包含一組多邊形的shapefile。我的工作目標是對屋頂類型進行分類。所以shapefile中的形狀是包含地圖中可以看到的屋頂的邊框。我現在擁有的是x-y-和z-座標中的一組點,所以我可以渲染下面可以看到的地圖。如何在此圖中添加多個圖層,將圖形的多邊形繪製到地圖中?在一塊土地上在Python中爲現有圖添加一層多邊形Matplotlib

plt.tripcolor(x, y, z, shading='gouraud') 

enter image description here

回答

2

添加形狀可以使用PolyCollection來完成。

import matplotlib.pyplot as plt 
from matplotlib import collections 
import numpy as np; np.random.seed(17) 

b = np.random.rand(100,3) 

fig, ax = plt.subplots() 
ax.tripcolor(b[:,0],b[:,1],b[:,2], shading='gouraud') 

polys = [np.random.rand(4,2)*.3+np.random.rand(1,2)*((2*i+1)/6.) for i in range(3)] 
pc = collections.PolyCollection(polys, color="crimson")  
ax.add_collection(pc) 

plt.show() 

enter image description here

相關問題