matplotlib:hxとhyを使って描画したい点の座標を持つ2つのリストがあります。これらの点を画像:plotImageとして描画する関数があります。Matplotlibの画像の周りにプロットする方法
ここでは、これらの点の間に線をプロットしたいと思いますが、線はピクチャの周りに何とか行きます。重要なのは画像と重ならないということです。
ここでは例として、緑の線は私が今持っているもの(凸包です)です。赤い線は線の様子の例です。
はここに私のコードです:
def plotImage(xData, yData, im):
for x, y in zip(xData, yData):
bb = Bbox.from_bounds(x,y,10,10)
bb2 = TransformedBbox(bb,ax.transData)
bbox_image = BboxImage(bb2,
norm = None,
origin=None,
clip_on=False)
bbox_image.set_data(im)
ax.add_artist(bbox_image)
fig=plt.figure()
ax=fig.add_subplot(111)
img = plt.imread('pic.png')
gx = list(map(lambda x: x - 5, hx)) # so the center of the picture is in the point I want to plot
gy = list(map(lambda y: y - 5, hy)) #(without this, the image is drawn so that the picture's left bottom corner is in my point)
plotImage(gx,gy,img)
plt.plot(hx, hy, 'g-', markersize=10)
だから私の質問は次のとおりです。この赤い船体を計算する方法?
赤い線は正確でなければなりませんか?それは緑色の頂点と同じくらい多くの頂点を持つ必要がありますか? – yar
これを使うことができますhttps://stackoverflow.com/questions/33831516/incrementing-area-of-convex-hull – Manuel