The PIL or Pillow package in Python provides a way to process the images in a program. We can open an image, manipulate the image for different use, and can use it to visualize the data as well. To display an image in an application, we generally refer to the Canvas widget. As canvas widget provides many functionalities to add images and objects in an application, we can use it to display the images.
To change a particular image, we can configure the canvas by using the itemconfig() constructor. It takes image files that need to be updated and displays them on the window.
Example
For this example, use three images of your choice and save them in the same project directory.
# Import the required library from tkinter import * from tkinter import ttk from PIL import Image, ImageTk # Create an instance of tkinter frame win=Tk() # Set the geometry win.geometry("750x400") # Define function to update the image def update_image(): canvas.itemconfig(image_container,image=img2) # Create a canvas and add the image into it canvas=Canvas(win, width=650, height=350) canvas.pack() # Create a button to update the canvas image button=ttk.Button(win, text="Update", command=lambda:update_image()) button.pack() # Open an Image in a Variable img1=PhotoImage(file="logo.png") img2=PhotoImage(file="logo2.png") img3=PhotoImage(file="logo3.png") # Add image to the canvas image_container=canvas.create_image(0,0, anchor="nw",image=img1) win.mainloop()
Output
Running the above code will display a window with a canvas and a button to update the canvas image.
Now, click the "Update" button to change the image.