簡體   English   中英

在Python Matplotlib中向現有繪圖添加多邊形層

[英]Adding a layer of polygons to an existing plot in Python Matplotlib

目前,我正在使用tripcolor函數對3D點數據進行三角剖分和着色。 我得到的是地圖數據的一部分。 而且我想使用更多數據。 我也有一個shapefile,其中包含一組多邊形。 我的工作目標是對屋頂類型進行分類。 因此,shapefile中的形狀是邊界,其中包括您可以看到的地圖中的屋頂。 我現在擁有的是x-y和z坐標中的一組點,因此我可以渲染您可以在下面看到的地圖。 如何在此圖內再添加一層,將形狀的多邊形繪制到地圖中?

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

在此處輸入圖片說明

可以使用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()

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM