2016-07-22 5 views
1

나는 이미지를 보여주고 그 위에 좌표계 (x-ax, y-ax)를 그려 넣고 싶다.tkinter를 사용하여 이미지 위에 좌표계를 그리는 방법은 무엇입니까?

을 나는 또한 X-AX/Y-도끼에 선을 그릴 수

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

관련 문제