2016-07-22 8 views
1

画像を表示し、その上に座標系(x-ax、y-ax)を描きたい。tkinterを使って画像の上に座標系を描画する方法は?

を 私はまた、X-AX/Y-AXのためのラインを描くことができ

img = ImageTk.PhotoImage(Image.open(path).resize((400,400),Image.ANTIALIAS)) 
panel = tk.Label(root,image = img, width = 400, height = 400s) 
panel.pack(size= "bottom", fill = "both", expand = "yes") 
panel.place(rely = 073, rely = 0.5s) 

画像を表示することができます(あなたの代わりにラインのフラッシュを描画する方法を知っていればそれも良いでしょう)

canvas = Canvas(root) 
canvas.create_line(x0,y0,x1,y1) 
canvas.pack() 

私はできないことは画像の上にこの行を置きます。私はcanvas.place()を使ってみましたが、イメージの上に置いたときにイメージはもう見えません。キャンバスを透明にする方法はありますか?それとも他に何かできますか?私はTkinterが初めてです。

ありがとうございました。

編集:どうやらTransparent canvas in tkinter python

キャンバスを透明にすることはできません。しかし、私は両方を見ることができるように、私は、キャンバスの背景画像を追加して、線を引くことができますか?

+1

コードに間違いがあります。 –

答えて

3

あなたはキャンバスに画像を配置し、その上に軸ラインを配置する必要があります:

import Tkinter as tk 
from PIL import Image, ImageTk 

root = tk.Tk() 

img_path = 'water-drop-splash.png' 
img = ImageTk.PhotoImage(Image.open(img_path).resize((400,400), Image.ANTIALIAS)) 

canvas = tk.Canvas(root, height=400, width=400) 
canvas.create_image(200, 200, image=img) 
canvas.create_line(0, 200, 399, 200, dash=(2,2)) # x-axis 
canvas.create_line(200, 0, 200, 399, dash=(2,2)) # y-axis 
canvas.pack() 

root.mainloop() 

タダ!

screenshot of tkinter window displaying image and axes

関連する問題