我在python中使用PIL绘制了一个图像。
import Image
import ImageDraw
createCM():
img = Image.new("RGB", (400,400), "white")
draw = ImageDraw.Draw(img)
coords = [(100,70), (220, 310), (200,200)]
dotSize = 2
for (x,y) in coords:
draw.rectangle([x,y,x+dotSize-1,y+dotSize-1], fill="black")
我想现在就想在我的wxpython面板上显示这个。
我是这样开始的
CMchart = createCM(self)
self.vbox = wxBoxSizer(wx.VERTICAL)
self.vbox.Add(CMchart, 1, wx.LEFT | wx.TOP | wx.GROW)
self.vbox.AddSpacer(25)
self.SetSizer(self.vbox)
self.vbox.Fit(self)
这没有显示任何内容。只是想知道我哪里出错了
谢谢
答案 0 :(得分:1)
不知道createcM是什么,真的很难知道如何帮助你。但缺点是要绘制一个图像,你从wx.Image加载数据,将其转换为wx.Bitmap,然后使用DeviceContext绘制它。通常首先将它绘制为wx.MemoryDC,然后在完成所有绘图更新后,使用wx.PaintDC或wx.ClientDC绘制它。看看吧
http://wiki.wxpython.org/WorkingWithImages#PIL_.28Python_Imaging_Library.29
为您提供了如何从PIL加载图像的好例子