class CustomToolbar(NavigationToolbar2TkAgg):
def _Button(self, text, file, command, extension='.ppm'):
img_file = os.path.join(matplotlib.rcParams['datapath'], 'images', file + extension)
im = Tk.PhotoImage(master=self, file=img_file)
# Do stuff with im here
b = Tk.Button(
master=self, text=text, padx=2, pady=2, image=im, command=command)
b._ntimage = im
b.pack(side=Tk.LEFT)
return b
如果我正确地理解了您想要什么,您可以创建一个自定义工具栏类,它继承自
NavigationToolbar2TkAgg
。您可以更改创建按钮的_Button
定义:如你所见,这里我们有一个图像文件im,它是你想要缩小的图像。
Tk.PhotoImage
只有subsample()
来完成这项工作,这可以使图像缩小一个整体因子。例如,您可以做im = im.subsample(2, 2)
使图像变小两倍(或者im = im.zoom(2, 2)
使它们变大一倍)。在也许某个更精通PIL的人可以告诉你是否有一种方法可以使用PIL来制作任何尺寸的图像,但我无法实现。在
相关问题 更多 >
编程相关推荐