{"id":14639,"date":"2024-03-15T09:40:15","date_gmt":"2024-03-15T09:40:15","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/"},"modified":"2025-08-06T11:26:13","modified_gmt":"2025-08-06T11:26:13","slug":"how-can-you-make-a-picture-move-in-python","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/","title":{"rendered":"Animate Images in Python: Move Pictures"},"content":{"rendered":"<p>To make images move, you can use graphic libraries in Python such as matplotlib or pygame. Below are examples of using matplotlib and pygame.<\/p>\n<p>Utilizing matplotlib:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">import<\/span> matplotlib.pyplot <span class=\"hljs-keyword\">as<\/span> plt\r\n<span class=\"hljs-keyword\">import<\/span> matplotlib.animation <span class=\"hljs-keyword\">as<\/span> animation\r\n\r\n<span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title function_\">update_animation<\/span>(<span class=\"hljs-params\">frame<\/span>):\r\n    <span class=\"hljs-comment\"># \u5728\u6bcf\u4e00\u5e27\u4e2d\u66f4\u65b0\u56fe\u7247\u4f4d\u7f6e\u6216\u5c5e\u6027<\/span>\r\n    <span class=\"hljs-comment\"># \u8fd9\u91cc\u53ef\u4ee5\u6839\u636e\u4f60\u7684\u9700\u6c42\u4fee\u6539\u56fe\u7247\u7684\u4f4d\u7f6e\u6216\u5c5e\u6027<\/span>\r\n    <span class=\"hljs-comment\"># \u4f8b\u5982\uff1a\u79fb\u52a8\u56fe\u7247\u7684x\u548cy\u5750\u6807<\/span>\r\n    x = frame\r\n    y = frame\r\n    plt.imshow(image, extent=[x, x+<span class=\"hljs-number\">1<\/span>, y, y+<span class=\"hljs-number\">1<\/span>])\r\n\r\n<span class=\"hljs-comment\"># \u521b\u5efa\u4e00\u4e2a\u56fe\u5f62\u7a97\u53e3<\/span>\r\nfig = plt.figure()\r\n\r\n<span class=\"hljs-comment\"># \u52a0\u8f7d\u56fe\u7247<\/span>\r\nimage = plt.imread(<span class=\"hljs-string\">'image.jpg'<\/span>)\r\n\r\n<span class=\"hljs-comment\"># \u521b\u5efa\u52a8\u753b\u5bf9\u8c61<\/span>\r\nani = animation.FuncAnimation(fig, update_animation, frames=<span class=\"hljs-built_in\">range<\/span>(<span class=\"hljs-number\">100<\/span>), interval=<span class=\"hljs-number\">100<\/span>)\r\n\r\n<span class=\"hljs-comment\"># \u663e\u793a\u52a8\u753b<\/span>\r\nplt.show()\r\n<\/code><\/pre>\n<p>Utilize pygame:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">import<\/span> pygame\r\n\r\n<span class=\"hljs-comment\"># \u521d\u59cb\u5316pygame<\/span>\r\npygame.init()\r\n\r\n<span class=\"hljs-comment\"># \u521b\u5efa\u7a97\u53e3<\/span>\r\nwindow = pygame.display.set_mode((<span class=\"hljs-number\">800<\/span>, <span class=\"hljs-number\">600<\/span>))\r\n\r\n<span class=\"hljs-comment\"># \u52a0\u8f7d\u56fe\u7247<\/span>\r\nimage = pygame.image.load(<span class=\"hljs-string\">'image.jpg'<\/span>)\r\n\r\n<span class=\"hljs-comment\"># \u8bbe\u7f6e\u56fe\u7247\u521d\u59cb\u4f4d\u7f6e<\/span>\r\nx = <span class=\"hljs-number\">0<\/span>\r\ny = <span class=\"hljs-number\">0<\/span>\r\n\r\n<span class=\"hljs-comment\"># \u521b\u5efa\u4e00\u4e2a\u65f6\u949f\u5bf9\u8c61\uff0c\u7528\u4e8e\u63a7\u5236\u52a8\u753b\u901f\u5ea6<\/span>\r\nclock = pygame.time.Clock()\r\n\r\n<span class=\"hljs-comment\"># \u6e38\u620f\u4e3b\u5faa\u73af<\/span>\r\nrunning = <span class=\"hljs-literal\">True<\/span>\r\n<span class=\"hljs-keyword\">while<\/span> running:\r\n    <span class=\"hljs-keyword\">for<\/span> event <span class=\"hljs-keyword\">in<\/span> pygame.event.get():\r\n        <span class=\"hljs-keyword\">if<\/span> event.<span class=\"hljs-built_in\">type<\/span> == pygame.QUIT:\r\n            running = <span class=\"hljs-literal\">False<\/span>\r\n\r\n    <span class=\"hljs-comment\"># \u5728\u6bcf\u4e00\u5e27\u4e2d\u66f4\u65b0\u56fe\u7247\u4f4d\u7f6e\u6216\u5c5e\u6027<\/span>\r\n    <span class=\"hljs-comment\"># \u8fd9\u91cc\u53ef\u4ee5\u6839\u636e\u4f60\u7684\u9700\u6c42\u4fee\u6539\u56fe\u7247\u7684\u4f4d\u7f6e\u6216\u5c5e\u6027<\/span>\r\n    <span class=\"hljs-comment\"># \u4f8b\u5982\uff1a\u79fb\u52a8\u56fe\u7247\u7684x\u548cy\u5750\u6807<\/span>\r\n    x += <span class=\"hljs-number\">1<\/span>\r\n    y += <span class=\"hljs-number\">1<\/span>\r\n\r\n    <span class=\"hljs-comment\"># \u6e05\u7a7a\u7a97\u53e3<\/span>\r\n    window.fill((<span class=\"hljs-number\">255<\/span>, <span class=\"hljs-number\">255<\/span>, <span class=\"hljs-number\">255<\/span>))\r\n\r\n    <span class=\"hljs-comment\"># \u5728\u7a97\u53e3\u4e2d\u7ed8\u5236\u56fe\u7247<\/span>\r\n    window.blit(image, (x, y))\r\n\r\n    <span class=\"hljs-comment\"># \u66f4\u65b0\u7a97\u53e3\u663e\u793a<\/span>\r\n    pygame.display.flip()\r\n\r\n    <span class=\"hljs-comment\"># \u63a7\u5236\u52a8\u753b\u901f\u5ea6<\/span>\r\n    clock.tick(<span class=\"hljs-number\">60<\/span>)\r\n\r\n<span class=\"hljs-comment\"># \u9000\u51fapygame<\/span>\r\npygame.quit()\r\n<\/code><\/pre>\n<p>The above are two common methods, and the specific choice depends on your needs and usage scenarios. You can choose the appropriate method based on your own situation to achieve the animated effect of the image.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To make images move, you can use graphic libraries in Python such as matplotlib or pygame. Below are examples of using matplotlib and pygame. Utilizing matplotlib: import matplotlib.pyplot as plt import matplotlib.animation as animation def update_animation(frame): # \u5728\u6bcf\u4e00\u5e27\u4e2d\u66f4\u65b0\u56fe\u7247\u4f4d\u7f6e\u6216\u5c5e\u6027 # \u8fd9\u91cc\u53ef\u4ee5\u6839\u636e\u4f60\u7684\u9700\u6c42\u4fee\u6539\u56fe\u7247\u7684\u4f4d\u7f6e\u6216\u5c5e\u6027 # \u4f8b\u5982\uff1a\u79fb\u52a8\u56fe\u7247\u7684x\u548cy\u5750\u6807 x = frame y = frame plt.imshow(image, extent=[x, x+1, y, y+1]) # \u521b\u5efa\u4e00\u4e2a\u56fe\u5f62\u7a97\u53e3 [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[19766,19767,19765,11840,19764],"class_list":["post-14639","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-matplotlib-animation","tag-move-image-python","tag-pygame-tutorial","tag-python-graphics","tag-python-image-animation"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Animate Images in Python: Move Pictures - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn to animate images in Python with matplotlib &amp; pygame. Move pictures step-by-step using code examples.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Animate Images in Python: Move Pictures\" \/>\n<meta property=\"og:description\" content=\"Learn to animate images in Python with matplotlib &amp; pygame. Move pictures step-by-step using code examples.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T09:40:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-06T11:26:13+00:00\" \/>\n<meta name=\"author\" content=\"Benjamin Taylor\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin Taylor\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\"},\"author\":{\"name\":\"Benjamin Taylor\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/ac801fe9549a25960ce48aa2e0a691c9\"},\"headline\":\"Animate Images in Python: Move Pictures\",\"datePublished\":\"2024-03-15T09:40:15+00:00\",\"dateModified\":\"2025-08-06T11:26:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\"},\"wordCount\":70,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"Matplotlib animation\",\"Move image Python\",\"Pygame tutorial\",\"Python graphics\",\"Python image animation\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\",\"name\":\"Animate Images in Python: Move Pictures - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T09:40:15+00:00\",\"dateModified\":\"2025-08-06T11:26:13+00:00\",\"description\":\"Learn to animate images in Python with matplotlib & pygame. Move pictures step-by-step using code examples.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Animate Images in Python: Move Pictures\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/ac801fe9549a25960ce48aa2e0a691c9\",\"name\":\"Benjamin Taylor\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ec2e3d3e2d525fd148047c4520ae7c1cdccd1f4b48a1a488422b31f04f345c14?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ec2e3d3e2d525fd148047c4520ae7c1cdccd1f4b48a1a488422b31f04f345c14?s=96&d=mm&r=g\",\"caption\":\"Benjamin Taylor\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/benjamintaylor\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Animate Images in Python: Move Pictures - Blog - Silicon Cloud","description":"Learn to animate images in Python with matplotlib & pygame. Move pictures step-by-step using code examples.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/","og_locale":"en_US","og_type":"article","og_title":"Animate Images in Python: Move Pictures","og_description":"Learn to animate images in Python with matplotlib & pygame. Move pictures step-by-step using code examples.","og_url":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T09:40:15+00:00","article_modified_time":"2025-08-06T11:26:13+00:00","author":"Benjamin Taylor","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Benjamin Taylor","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/"},"author":{"name":"Benjamin Taylor","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/ac801fe9549a25960ce48aa2e0a691c9"},"headline":"Animate Images in Python: Move Pictures","datePublished":"2024-03-15T09:40:15+00:00","dateModified":"2025-08-06T11:26:13+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/"},"wordCount":70,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["Matplotlib animation","Move image Python","Pygame tutorial","Python graphics","Python image animation"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/","url":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/","name":"Animate Images in Python: Move Pictures - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T09:40:15+00:00","dateModified":"2025-08-06T11:26:13+00:00","description":"Learn to animate images in Python with matplotlib & pygame. Move pictures step-by-step using code examples.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-can-you-make-a-picture-move-in-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Animate Images in Python: Move Pictures"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/ac801fe9549a25960ce48aa2e0a691c9","name":"Benjamin Taylor","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ec2e3d3e2d525fd148047c4520ae7c1cdccd1f4b48a1a488422b31f04f345c14?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ec2e3d3e2d525fd148047c4520ae7c1cdccd1f4b48a1a488422b31f04f345c14?s=96&d=mm&r=g","caption":"Benjamin Taylor"},"url":"https:\/\/www.silicloud.com\/blog\/author\/benjamintaylor\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/14639","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=14639"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/14639\/revisions"}],"predecessor-version":[{"id":158676,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/14639\/revisions\/158676"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=14639"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=14639"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=14639"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}