{"id":1861,"date":"2023-04-27T21:31:53","date_gmt":"2023-04-27T12:31:53","guid":{"rendered":"https:\/\/edu.ujhb.org\/?p=1861"},"modified":"2023-04-27T21:31:54","modified_gmt":"2023-04-27T12:31:54","slug":"matplotlib%e5%85%a5%e9%97%a8%ef%bc%88%e4%b8%ad%e6%96%87%e7%89%88%ef%bc%89","status":"publish","type":"post","link":"https:\/\/edu.ujhb.org\/?p=1861","title":{"rendered":"Matplotlib\u5165\u95e8\uff08\u4e2d\u6587\u7248\uff09"},"content":{"rendered":"\n<p>\u6211\u662f\u8981\u505aIT\u6559\u7a0b\u7684\u89c6\u9891\uff0c\u4f60\u80fd\u5426\u6839\u636e\u7f51\u7ad9\u7684\u5185\u5bb9\uff0c\u4e3a\u6211\u5b89\u6392\u89c6\u9891\u6559\u7a0b\u7684\u6587\u5b57\u5185\u5bb9\u3002\u6211\u4eec\u5148\u4eceMatplotlib\u6559\u7a0b\u5f00\u59cb\uff0c\u4f60\u5148\u4e3a\u6211\u5217\u51fa\u8981\u8bb2\u89e3\u7684\u5185\u5bb9\u4e00\u89c8\u3002<\/p>\n\n\n\n<p>\u5f53\u7136\u53ef\u4ee5\uff01\u4ee5\u4e0b\u662f\u4e00\u4e2a\u5173\u4e8eMatplotlib\u6559\u7a0b\u7684\u89c6\u9891\u6559\u7a0b\u5927\u7eb2\u3002\u4f60\u53ef\u4ee5\u6839\u636e\u8fd9\u4e2a\u5927\u7eb2\u6765\u5236\u4f5c\u4f60\u7684IT\u6559\u7a0b\u89c6\u9891\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Matplotlib\u7b80\u4ecb 1.1. \u4ec0\u4e48\u662fMatplotlib 1.2. \u4e3a\u4ec0\u4e48\u9009\u62e9Matplotlib 1.3. Matplotlib\u548c\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\u7684\u6bd4\u8f83<\/li>\n\n\n\n<li>\u5b89\u88c5\u548c\u914d\u7f6e 2.1. \u5b89\u88c5Matplotlib 2.2. \u914d\u7f6e\u73af\u5883 2.3. \u6d4b\u8bd5\u5b89\u88c5<\/li>\n\n\n\n<li>\u57fa\u672c\u7ed8\u56fe 3.1. \u521b\u5efa\u56fe\u5f62\u548c\u8f74 3.2. \u7ed8\u5236\u7ebf\u56fe 3.3. \u7ed8\u5236\u6563\u70b9\u56fe 3.4. \u7ed8\u5236\u67f1\u72b6\u56fe 3.5. \u7ed8\u5236\u997c\u56fe<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u56fe\u5f62 4.1. \u8bbe\u7f6e\u6807\u9898\u548c\u8f74\u6807\u7b7e 4.2. \u8bbe\u7f6e\u56fe\u4f8b 4.3. \u8c03\u6574\u5750\u6807\u8f74\u8303\u56f4 4.4. \u4fee\u6539\u7ebf\u578b\u548c\u989c\u8272 4.5. \u6dfb\u52a0\u7f51\u683c\u7ebf\u548c\u80cc\u666f\u8272<\/li>\n\n\n\n<li>\u591a\u56fe\u548c\u5b50\u56fe 5.1. \u521b\u5efa\u5b50\u56fe 5.2. \u8c03\u6574\u5b50\u56fe\u95f4\u8ddd 5.3. \u5171\u4eab\u5750\u6807\u8f74 5.4. \u6dfb\u52a0\u5b50\u56fe\u6807\u9898<\/li>\n\n\n\n<li>3D\u7ed8\u56fe 6.1. 3D\u6563\u70b9\u56fe 6.2. 3D\u67f1\u72b6\u56fe 6.3. 3D\u66f2\u9762\u56fe<\/li>\n\n\n\n<li>\u52a8\u753b\u548c\u4ea4\u4e92\u5f0f\u7ed8\u56fe 7.1. \u521b\u5efa\u52a8\u753b 7.2. \u66f4\u65b0\u56fe\u5f62 7.3. \u4fdd\u5b58\u52a8\u753b 7.4. \u4ea4\u4e92\u5f0f\u7ed8\u56fe\u53ca\u4e8b\u4ef6\u5904\u7406<\/li>\n\n\n\n<li>\u5bfc\u5165\u548c\u5bfc\u51fa\u6570\u636e 8.1. \u4eceCSV\u6587\u4ef6\u5bfc\u5165\u6570\u636e 8.2. \u4eceExcel\u6587\u4ef6\u5bfc\u5165\u6570\u636e 8.3. \u5bfc\u51fa\u56fe\u5f62\u4e3a\u56fe\u7247<\/li>\n\n\n\n<li>\u5b9e\u6218\u6848\u4f8b 9.1. \u65f6\u95f4\u5e8f\u5217\u5206\u6790 9.2. \u76f8\u5173\u6027\u5206\u6790 9.3. \u5730\u7406\u6570\u636e\u53ef\u89c6\u5316<\/li>\n\n\n\n<li>\u7ed3\u675f\u8bed 10.1. Matplotlib\u7684\u5c40\u9650\u6027 10.2. \u63a2\u7d22\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177 10.3. \u8d44\u6e90\u548c\u8fdb\u4e00\u6b65\u5b66\u4e60<\/li>\n<\/ol>\n\n\n\n<p>\u4f60\u53ef\u4ee5\u6839\u636e\u8fd9\u4e2a\u5927\u7eb2\u6765\u5236\u4f5c\u4f60\u7684Matplotlib\u6559\u7a0b\u89c6\u9891\uff0c\u5982\u679c\u4f60\u6709\u5176\u4ed6\u9700\u6c42\uff0c\u4e5f\u53ef\u4ee5\u968f\u65f6\u544a\u8bc9\u6211\uff0c\u6211\u4f1a\u5e2e\u52a9\u4f60\u8c03\u6574\u548c\u5b8c\u5584\u5927\u7eb2\u3002\u795d\u4f60\u5236\u4f5c\u987a\u5229\uff01<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4ec0\u4e48\u662fMatplotlib<\/p>\n\n\n\n<p>The previous model used in this conversation is unavailable. We&#8217;ve switched you to the latest default model<\/p>\n\n\n\n<p>Matplotlib\u662f\u4e00\u4e2aPython\u5e93\uff0c\u7528\u4e8e\u7ed8\u5236\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u5305\u62ec\u7ebf\u56fe\u3001\u6563\u70b9\u56fe\u3001\u67f1\u72b6\u56fe\u3001\u997c\u56fe\u30013D\u56fe\u7b49\u3002\u5b83\u63d0\u4f9b\u4e86\u7c7b\u4f3c\u4e8eMATLAB\u7684\u7ed8\u56fe\u63a5\u53e3\uff0c\u662f\u6570\u636e\u79d1\u5b66\u548c\u6570\u636e\u53ef\u89c6\u5316\u9886\u57df\u4e2d\u6700\u5e38\u7528\u7684\u5e93\u4e4b\u4e00\u3002<\/p>\n\n\n\n<p>Matplotlib\u4e0d\u4ec5\u4ec5\u662f\u4e00\u4e2a\u7ed8\u56fe\u5e93\uff0c\u5b83\u8fd8\u53ef\u4ee5\u4e0eNumPy\u548cPandas\u7b49Python\u79d1\u5b66\u8ba1\u7b97\u5e93\u4e00\u8d77\u4f7f\u7528\u3002Matplotlib\u63d0\u4f9b\u4e86\u5927\u91cf\u7684\u5b9a\u5236\u9009\u9879\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\u56fe\u5f62\u7684\u5404\u4e2a\u65b9\u9762\uff0c\u5982\u989c\u8272\u3001\u7ebf\u578b\u3001\u5b57\u4f53\u3001\u5750\u6807\u8f74\u8303\u56f4\u3001\u56fe\u4f8b\u7b49\u3002\u6b64\u5916\uff0cMatplotlib\u8fd8\u652f\u6301\u591a\u79cd\u8f93\u51fa\u683c\u5f0f\uff0c\u5305\u62ecPDF\u3001SVG\u3001JPG\u3001PNG\u7b49\u3002<\/p>\n\n\n\n<p>Matplotlib\u662f\u4e00\u4e2a\u5f00\u6e90\u7684\u5e93\uff0c\u7531John Hunter\u57282003\u5e74\u521b\u7acb\u3002\u81ea\u90a3\u65f6\u4ee5\u6765\uff0cMatplotlib\u5df2\u7ecf\u6210\u957f\u4e3a\u4e00\u4e2a\u5f3a\u5927\u4e14\u6613\u4e8e\u4f7f\u7528\u7684\u5e93\uff0c\u5e7f\u6cdb\u7528\u4e8e\u5404\u79cd\u9886\u57df\u7684\u6570\u636e\u5206\u6790\u548c\u53ef\u89c6\u5316\u4efb\u52a1\uff0c\u5305\u62ec\u91d1\u878d\u3001\u751f\u547d\u79d1\u5b66\u3001\u7269\u7406\u5b66\u3001\u5730\u7406\u4fe1\u606f\u7cfb\u7edf\u7b49\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0cMatplotlib\u662f\u4e00\u4e2aPython\u6570\u636e\u53ef\u89c6\u5316\u7684\u57fa\u7840\u5de5\u5177\uff0c\u5b83\u63d0\u4f9b\u4e86\u5e7f\u6cdb\u7684\u56fe\u5f62\u7c7b\u578b\u548c\u7ed8\u56fe\u9009\u9879\uff0c\u4f7f\u5f97\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u7b80\u5355\u7684\u4ee3\u7801\u521b\u5efa\u4e13\u4e1a\u7ea7\u522b\u7684\u6570\u636e\u53ef\u89c6\u5316\u56fe\u5f62\uff0c\u540c\u65f6\u4e5f\u975e\u5e38\u9002\u5408\u7528\u4e8e\u63a2\u7d22\u6027\u6570\u636e\u5206\u6790\u548c\u6570\u636e\u53ef\u89c6\u5316\u7684\u6559\u5b66\u548c\u5b66\u4e60\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4e3a\u4ec0\u4e48\u9009\u62e9Matplotlib<\/p>\n\n\n\n<p>\u9009\u62e9Matplotlib\u7684\u539f\u56e0\u6709\u5f88\u591a\uff0c\u4ee5\u4e0b\u662f\u4e00\u4e9b\u4e3b\u8981\u7684\u539f\u56e0\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u514d\u8d39\u4e14\u5f00\u6e90\uff1aMatplotlib\u662f\u4e00\u6b3e\u514d\u8d39\u4e14\u5f00\u6e90\u7684\u8f6f\u4ef6\uff0c\u56e0\u6b64\u4efb\u4f55\u4eba\u90fd\u53ef\u4ee5\u4f7f\u7528\u5b83\u6765\u521b\u5efa\u56fe\u5f62\uff0c\u800c\u4e14\u5b83\u4e5f\u4e0d\u9700\u8981\u4ed8\u8d39\u8d2d\u4e70\u4e13\u4e1a\u7248\u6388\u6743\u3002<\/li>\n\n\n\n<li>\u6613\u4e8e\u4f7f\u7528\uff1aMatplotlib\u63d0\u4f9b\u4e86\u4e00\u4e2a\u76f4\u89c2\u7684API\u63a5\u53e3\uff0c\u4f7f\u5f97\u7528\u6237\u53ef\u4ee5\u7528\u7b80\u5355\u7684Python\u4ee3\u7801\u521b\u5efa\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u800c\u4e14\u8fd9\u4e9b\u4ee3\u7801\u901a\u5e38\u4e5f\u975e\u5e38\u5bb9\u6613\u7406\u89e3\u3002<\/li>\n\n\n\n<li>\u5f3a\u5927\u7684\u53ef\u5b9a\u5236\u6027\uff1aMatplotlib\u63d0\u4f9b\u4e86\u5927\u91cf\u7684\u5b9a\u5236\u9009\u9879\uff0c\u5305\u62ec\u7ebf\u578b\u3001\u989c\u8272\u3001\u6807\u7b7e\u3001\u5b57\u4f53\u3001\u5750\u6807\u8f74\u8303\u56f4\u3001\u56fe\u4f8b\u7b49\uff0c\u56e0\u6b64\u7528\u6237\u53ef\u4ee5\u5f88\u5bb9\u6613\u5730\u5c06\u56fe\u5f62\u8c03\u6574\u5230\u4ed6\u4eec\u6240\u9700\u8981\u7684\u6837\u5b50\u3002<\/li>\n\n\n\n<li>\u591a\u79cd\u8f93\u51fa\u683c\u5f0f\uff1aMatplotlib\u652f\u6301\u591a\u79cd\u8f93\u51fa\u683c\u5f0f\uff0c\u5305\u62ecPDF\u3001SVG\u3001JPG\u3001PNG\u7b49\uff0c\u56e0\u6b64\u7528\u6237\u53ef\u4ee5\u5c06\u56fe\u5f62\u8f93\u51fa\u4e3a\u5404\u79cd\u4e0d\u540c\u7684\u683c\u5f0f\uff0c\u4ee5\u4fbf\u5728\u4e0d\u540c\u7684\u573a\u5408\u4e0b\u4f7f\u7528\u3002<\/li>\n\n\n\n<li>\u5927\u91cf\u7684\u6587\u6863\u548c\u793e\u533a\u652f\u6301\uff1aMatplotlib\u6709\u5927\u91cf\u7684\u6587\u6863\u548c\u793e\u533a\u652f\u6301\uff0c\u7528\u6237\u53ef\u4ee5\u5728\u5b98\u65b9\u7f51\u7ad9\u4e0a\u627e\u5230\u8be6\u7ec6\u7684\u6587\u6863\u548c\u793a\u4f8b\uff0c\u8fd8\u53ef\u4ee5\u5728\u5404\u79cd\u793e\u4ea4\u5a92\u4f53\u5e73\u53f0\u4e0a\u627e\u5230\u4e0eMatplotlib\u76f8\u5173\u7684\u6559\u7a0b\u548c\u5e2e\u52a9\u3002<\/li>\n\n\n\n<li>\u4e0ePython\u751f\u6001\u7cfb\u7edf\u7684\u7d27\u5bc6\u96c6\u6210\uff1aMatplotlib\u4e0ePython\u751f\u6001\u7cfb\u7edf\u7684\u5176\u4ed6\u5e93\u7d27\u5bc6\u96c6\u6210\uff0c\u5982NumPy\u3001Pandas\u3001SciPy\u7b49\uff0c\u8fd9\u4f7f\u5f97\u5b83\u53ef\u4ee5\u65b9\u4fbf\u5730\u4e0e\u6570\u636e\u5206\u6790\u548c\u79d1\u5b66\u8ba1\u7b97\u4efb\u52a1\u4e00\u8d77\u4f7f\u7528\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0c\u9009\u62e9Matplotlib\u7684\u539f\u56e0\u662f\u5b83\u662f\u4e00\u4e2a\u5f3a\u5927\u3001\u7075\u6d3b\u3001\u6613\u4e8e\u4f7f\u7528\u4e14\u514d\u8d39\u7684\u6570\u636e\u53ef\u89c6\u5316\u5e93\uff0c\u5b83\u63d0\u4f9b\u4e86\u5e7f\u6cdb\u7684\u56fe\u5f62\u7c7b\u578b\u548c\u7ed8\u56fe\u9009\u9879\uff0c\u4f7f\u5f97\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u7b80\u5355\u7684\u4ee3\u7801\u521b\u5efa\u4e13\u4e1a\u7ea7\u522b\u7684\u6570\u636e\u53ef\u89c6\u5316\u56fe\u5f62\uff0c\u5e76\u4e14Matplotlib\u4e5f\u975e\u5e38\u9002\u5408\u7528\u4e8e\u63a2\u7d22\u6027\u6570\u636e\u5206\u6790\u548c\u6570\u636e\u53ef\u89c6\u5316\u7684\u6559\u5b66\u548c\u5b66\u4e60\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caMatplotlib\u548c\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\u7684\u6bd4\u8f83<\/p>\n\n\n\n<p>Matplotlib\u662f\u4e00\u79cd\u5e7f\u6cdb\u4f7f\u7528\u7684Python\u6570\u636e\u53ef\u89c6\u5316\u5e93\uff0c\u4f46\u662f\u8fd8\u6709\u5176\u4ed6\u4e00\u4e9b\u53ef\u89c6\u5316\u5de5\u5177\u53ef\u4f9b\u9009\u62e9\u3002\u4ee5\u4e0b\u662fMatplotlib\u4e0e\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\u7684\u4e00\u4e9b\u6bd4\u8f83\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Seaborn\uff1aSeaborn\u662f\u53e6\u4e00\u79cdPython\u6570\u636e\u53ef\u89c6\u5316\u5e93\uff0c\u5b83\u5efa\u7acb\u5728Matplotlib\u4e4b\u4e0a\uff0c\u5e76\u63d0\u4f9b\u4e86\u66f4\u9ad8\u7ea7\u522b\u7684\u56fe\u5f62\u63a5\u53e3\u548c\u9884\u8bbe\u6837\u5f0f\uff0c\u8fd9\u4f7f\u5f97\u7528\u6237\u53ef\u4ee5\u66f4\u5feb\u901f\u5730\u521b\u5efa\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\u3002\u4e0eMatplotlib\u76f8\u6bd4\uff0cSeaborn\u63d0\u4f9b\u7684\u56fe\u5f62\u5b9a\u5236\u9009\u9879\u53ef\u80fd\u66f4\u5c11\uff0c\u4f46\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0cSeaborn\u53ef\u80fd\u4f1a\u66f4\u5bb9\u6613\u4f7f\u7528\u3002<\/li>\n\n\n\n<li>Plotly\uff1aPlotly\u662f\u4e00\u79cd\u57fa\u4e8eJavaScript\u7684\u53ef\u89c6\u5316\u5e93\uff0c\u5b83\u63d0\u4f9b\u4e86\u4ea4\u4e92\u5f0f\u56fe\u5f62\u548c\u52a8\u6001\u6548\u679c\u3002\u4e0eMatplotlib\u76f8\u6bd4\uff0cPlotly\u63d0\u4f9b\u7684\u56fe\u5f62\u53ef\u80fd\u66f4\u52a0\u5f15\u4eba\u6ce8\u76ee\uff0c\u800c\u4e14\u5b83\u7684\u53ef\u89c6\u5316\u6548\u679c\u66f4\u52a0\u73b0\u4ee3\u5316\u3002\u4f46\u662f\uff0cPlotly\u662f\u4e00\u4e2a\u5546\u4e1a\u8f6f\u4ef6\uff0c\u9700\u8981\u4ed8\u8d39\u8d2d\u4e70\u4e13\u4e1a\u7248\u6388\u6743\u624d\u80fd\u4f7f\u7528\uff0c\u8fd9\u4f7f\u5f97\u5b83\u4e0d\u5982Matplotlib\u548cSeaborn\u90a3\u6837\u5e7f\u6cdb\u4f7f\u7528\u3002<\/li>\n\n\n\n<li>ggplot\uff1aggplot\u662f\u4e00\u79cdR\u8bed\u8a00\u6570\u636e\u53ef\u89c6\u5316\u5e93\uff0c\u5b83\u5efa\u7acb\u5728\u57fa\u4e8e\u8bed\u6cd5\u7684\u7ed8\u56fe\u7406\u5ff5\u4e0a\uff0c\u5e76\u63d0\u4f9b\u4e86\u4e00\u79cd\u7c7b\u4f3c\u4e8eSeaborn\u7684\u9ad8\u7ea7\u522b\u56fe\u5f62\u63a5\u53e3\u3002\u4e0eMatplotlib\u76f8\u6bd4\uff0cggplot\u63d0\u4f9b\u7684\u56fe\u5f62\u53ef\u80fd\u66f4\u52a0\u7f8e\u89c2\uff0c\u800c\u4e14\u5b83\u7684\u53ef\u89c6\u5316\u8bed\u6cd5\u66f4\u52a0\u76f4\u89c2\u3002\u4f46\u662f\uff0cggplot\u53ea\u80fd\u7528\u4e8eR\u8bed\u8a00\uff0c\u56e0\u6b64\u5982\u679c\u4f60\u4f7f\u7528Python\uff0c\u90a3\u4e48Matplotlib\u53ef\u80fd\u66f4\u9002\u5408\u4f60\u3002<\/li>\n\n\n\n<li>D3.js\uff1aD3.js\u662f\u4e00\u79cd\u57fa\u4e8eJavaScript\u7684\u53ef\u89c6\u5316\u5e93\uff0c\u5b83\u63d0\u4f9b\u4e86\u9ad8\u5ea6\u5b9a\u5236\u5316\u7684\u56fe\u5f62\u63a5\u53e3\u548c\u4ea4\u4e92\u5f0f\u6548\u679c\u3002\u4e0eMatplotlib\u76f8\u6bd4\uff0cD3.js\u63d0\u4f9b\u7684\u56fe\u5f62\u6548\u679c\u66f4\u52a0\u5f15\u4eba\u6ce8\u76ee\uff0c\u800c\u4e14\u5b83\u7684\u4ea4\u4e92\u5f0f\u6548\u679c\u66f4\u52a0\u4e30\u5bcc\u3002\u4f46\u662f\uff0cD3.js\u9700\u8981\u66f4\u591a\u7684\u7f16\u7801\u5de5\u4f5c\uff0c\u5e76\u4e14\u5b83\u7684\u5b66\u4e60\u66f2\u7ebf\u53ef\u80fd\u66f4\u52a0\u9661\u5ced\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cMatplotlib\u662f\u4e00\u4e2a\u529f\u80fd\u5f3a\u5927\u3001\u7075\u6d3b\u3001\u6613\u4e8e\u4f7f\u7528\u4e14\u514d\u8d39\u7684\u6570\u636e\u53ef\u89c6\u5316\u5e93\uff0c\u5b83\u63d0\u4f9b\u4e86\u5e7f\u6cdb\u7684\u56fe\u5f62\u7c7b\u578b\u548c\u7ed8\u56fe\u9009\u9879\uff0c\u4f7f\u5f97\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u7b80\u5355\u7684\u4ee3\u7801\u521b\u5efa\u4e13\u4e1a\u7ea7\u522b\u7684\u6570\u636e\u53ef\u89c6\u5316\u56fe\u5f62\uff0c\u5e76\u4e14Matplotlib\u4e5f\u975e\u5e38\u9002\u5408\u7528\u4e8e\u63a2\u7d22\u6027\u6570\u636e\u5206\u6790\u548c\u6570\u636e\u53ef\u89c6\u5316\u7684\u6559\u5b66\u548c\u5b66\u4e60\u3002\u4f46\u662f\uff0c\u6839\u636e\u4e0d\u540c\u7684\u9700\u6c42\u548c\u504f\u597d\uff0c\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\u4e5f\u53ef\u80fd\u66f4\u52a0\u9002\u5408\u4f60\u7684\u4efb\u52a1\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5b89\u88c5Matplotlib<\/p>\n\n\n\n<p>\u5b89\u88c5Matplotlib\u901a\u5e38\u662f\u5f88\u7b80\u5355\u7684\u3002\u4e0b\u9762\u662f\u5728Windows\u3001macOS\u548cLinux\u4e0a\u5b89\u88c5Matplotlib\u7684\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5728Windows\u4e0a\u5b89\u88c5Matplotlib\uff1a1.1 \u6253\u5f00\u547d\u4ee4\u63d0\u793a\u7b26\u6216PowerShell\uff0c\u5e76\u4f7f\u7528pip\u547d\u4ee4\u5b89\u88c5Matplotlib\uff1a<code>pip install matplotlib<\/code>1.2 \u5982\u679c\u4f60\u4f7f\u7528\u7684\u662fAnaconda\u53d1\u884c\u7248\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528conda\u547d\u4ee4\u6765\u5b89\u88c5Matplotlib\uff1a<code>conda install matplotlib<\/code><\/li>\n\n\n\n<li>\u5728macOS\u4e0a\u5b89\u88c5Matplotlib\uff1a2.1 \u6253\u5f00\u7ec8\u7aef\uff0c\u5e76\u4f7f\u7528pip\u547d\u4ee4\u5b89\u88c5Matplotlib\uff1a<code>pip install matplotlib<\/code>2.2 \u5982\u679c\u4f60\u4f7f\u7528\u7684\u662fAnaconda\u53d1\u884c\u7248\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528conda\u547d\u4ee4\u6765\u5b89\u88c5Matplotlib\uff1a<code>conda install matplotlib<\/code><\/li>\n\n\n\n<li>\u5728Linux\u4e0a\u5b89\u88c5Matplotlib\uff1a3.1 \u6253\u5f00\u7ec8\u7aef\uff0c\u5e76\u4f7f\u7528pip\u547d\u4ee4\u5b89\u88c5Matplotlib\uff1a<code>pip install matplotlib<\/code>3.2 \u5982\u679c\u4f60\u4f7f\u7528\u7684\u662fAnaconda\u53d1\u884c\u7248\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528conda\u547d\u4ee4\u6765\u5b89\u88c5Matplotlib\uff1a<code>conda install matplotlib<\/code>3.3 \u5982\u679c\u4f60\u4f7f\u7528\u7684\u662fUbuntu\u6216Debian\u7b49\u57fa\u4e8eDebian\u7684Linux\u53d1\u884c\u7248\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528apt-get\u547d\u4ee4\u6765\u5b89\u88c5Matplotlib\uff1a<code>sudo apt-get install python3-matplotlib<\/code>3.4 \u5982\u679c\u4f60\u4f7f\u7528\u7684\u662fFedora\u6216CentOS\u7b49\u57fa\u4e8eRed Hat\u7684Linux\u53d1\u884c\u7248\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528dnf\u6216yum\u547d\u4ee4\u6765\u5b89\u88c5Matplotlib\uff1a<code>sudo dnf install python3-matplotlib<\/code>\u6216<code>sudo yum install python3-matplotlib<\/code><\/li>\n<\/ol>\n\n\n\n<p>\u5728\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4f60\u53ef\u4ee5\u5728Python\u4ee3\u7801\u4e2d\u5bfc\u5165Matplotlib\u5e93\uff0c\u5e76\u4f7f\u7528\u5b83\u6765\u521b\u5efa\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\u3002\u5982\u679c\u4f60\u9047\u5230\u4e86\u4efb\u4f55\u95ee\u9898\u6216\u9519\u8bef\uff0c\u8bf7\u53c2\u8003\u5b98\u65b9\u6587\u6863\u6216\u793e\u533a\u652f\u6301\uff0c\u6216\u8005\u5728Stack Overflow\u7b49\u7f51\u7ad9\u4e0a\u5bfb\u6c42\u5e2e\u52a9\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5982\u4f55\u914d\u7f6e\u73af\u5883<\/p>\n\n\n\n<p>\u914d\u7f6e\u73af\u5883\u901a\u5e38\u662f\u4e3a\u4e86\u786e\u4fdd\u4f60\u7684\u7cfb\u7edf\u80fd\u591f\u6b63\u786e\u5730\u8fd0\u884c\u548c\u4f7f\u7528Matplotlib\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u5e38\u89c1\u7684\u73af\u5883\u914d\u7f6e\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u68c0\u67e5Python\u7248\u672c\uff1aMatplotlib\u8981\u6c42\u4f7f\u7528Python 3.5\u6216\u66f4\u9ad8\u7248\u672c\u3002\u5982\u679c\u4f60\u7684Python\u7248\u672c\u4f4e\u4e8e\u8fd9\u4e2a\u8981\u6c42\uff0c\u8bf7\u5148\u5347\u7ea7\u5230\u6700\u65b0\u7248\u672c\u3002<\/li>\n\n\n\n<li>\u5b89\u88c5\u4f9d\u8d56\u9879\uff1aMatplotlib\u4f9d\u8d56\u4e8e\u4e00\u4e9b\u5176\u4ed6\u7684Python\u5e93\uff0c\u5982NumPy\u3001Pillow\u7b49\u3002\u5728\u5b89\u88c5Matplotlib\u4e4b\u524d\uff0c\u8bf7\u786e\u4fdd\u8fd9\u4e9b\u5e93\u5df2\u7ecf\u6b63\u786e\u5b89\u88c5\u3002\u4f60\u53ef\u4ee5\u4f7f\u7528pip\u6216conda\u547d\u4ee4\u6765\u5b89\u88c5\u8fd9\u4e9b\u5e93\uff0c\u5982\uff1a<code>pip install numpy<\/code>\u6216<code>conda install numpy<\/code>\u3002<\/li>\n\n\n\n<li>\u8bbe\u7f6eMatplotlib\u7684\u540e\u7aef\uff1aMatplotlib\u6709\u591a\u79cd\u56fe\u5f62\u540e\u7aef\uff0c\u7528\u4e8e\u5904\u7406\u56fe\u5f62\u6e32\u67d3\u548c\u4ea4\u4e92\u5f0f\u663e\u793a\u7b49\u4efb\u52a1\u3002\u4f60\u53ef\u4ee5\u5728Matplotlib\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\u8bbe\u7f6e\u9ed8\u8ba4\u7684\u540e\u7aef\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0cMatplotlib\u4f7f\u7528TkAgg\u540e\u7aef\u3002\u4f60\u53ef\u4ee5\u901a\u8fc7\u5728Python\u811a\u672c\u4e2d\u6dfb\u52a0\u4ee5\u4e0b\u4ee3\u7801\u6765\u68c0\u67e5\u548c\u8bbe\u7f6e\u9ed8\u8ba4\u7684\u540e\u7aef\uff1apythonCopy code<code>import matplotlib print(matplotlib.get_backend()) # \u6253\u5370\u5f53\u524d\u7684\u540e\u7aef matplotlib.use('agg') # \u8bbe\u7f6e\u540e\u7aef\u4e3aagg<\/code><\/li>\n\n\n\n<li>\u914d\u7f6eMatplotlib\u7684\u6837\u5f0f\uff1aMatplotlib\u63d0\u4f9b\u4e86\u591a\u79cd\u5185\u7f6e\u7684\u6837\u5f0f\u9009\u9879\uff0c\u53ef\u4ee5\u8ba9\u4f60\u5feb\u901f\u8bbe\u7f6e\u56fe\u5f62\u7684\u989c\u8272\u3001\u5b57\u4f53\u3001\u6807\u7b7e\u7b49\u3002\u4f60\u53ef\u4ee5\u901a\u8fc7\u5728Python\u811a\u672c\u4e2d\u6dfb\u52a0\u4ee5\u4e0b\u4ee3\u7801\u6765\u542f\u7528\u7279\u5b9a\u7684\u6837\u5f0f\uff1apythonCopy code<code>import matplotlib.pyplot as plt plt.style.use('ggplot') # \u542f\u7528ggplot\u6837\u5f0f <\/code>\u4f60\u8fd8\u53ef\u4ee5\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u8bbe\u7f6e\u9ed8\u8ba4\u7684\u6837\u5f0f\u9009\u9879\u3002<\/li>\n\n\n\n<li>\u8bbe\u7f6eMatplotlib\u7684\u5b57\u4f53\uff1a\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u4fee\u6539Matplotlib\u7684\u9ed8\u8ba4\u5b57\u4f53\u3002\u4f60\u53ef\u4ee5\u5728Matplotlib\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\u8bbe\u7f6e\u5b57\u4f53\u9009\u9879\u3002\u4f8b\u5982\uff0c\u4f60\u53ef\u4ee5\u5c06\u4e0b\u9762\u7684\u4ee3\u7801\u6dfb\u52a0\u5230Matplotlib\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\uff1ayamlCopy code<code>font.family : sans-serif font.sans-serif : Arial, Helvetica, sans-serif <\/code>\u8fd9\u5c06\u628a\u5b57\u4f53\u8bbe\u7f6e\u4e3a\u5e38\u7528\u7684\u65e0\u886c\u7ebf\u5b57\u4f53\uff0c\u5982Arial\u3001Helvetica\u7b49\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u5e38\u89c1\u7684\u73af\u5883\u914d\u7f6e\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u914d\u7f6e\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u73af\u5883\u914d\u7f6e\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5982\u4f55\u6d4b\u8bd5\u5b89\u88c5<\/p>\n\n\n\n<p>\u5728\u5b89\u88c5Matplotlib\u540e\uff0c\u6700\u597d\u8fdb\u884c\u4e00\u4e9b\u7b80\u5355\u7684\u6d4b\u8bd5\uff0c\u4ee5\u786e\u4fddMatplotlib\u5df2\u7ecf\u6b63\u786e\u5730\u5b89\u88c5\u548c\u914d\u7f6e\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u6d4b\u8bd5Matplotlib\u5b89\u88c5\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u5165Matplotlib\u5e93\u5e76\u68c0\u67e5\u7248\u672c\uff1a\u5728Python\u4ea4\u4e92\u5f0f\u547d\u4ee4\u884c\u4e2d\uff0c\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\u53ef\u4ee5\u5bfc\u5165Matplotlib\u5e93\u5e76\u68c0\u67e5\u5176\u7248\u672c\uff1apythonCopy code<code>import matplotlib print(matplotlib.__version__) <\/code>\u5982\u679c\u8fd9\u4e2a\u547d\u4ee4\u53ef\u4ee5\u6b63\u5e38\u8fd0\u884c\u5e76\u8f93\u51faMatplotlib\u7684\u7248\u672c\u53f7\uff0c\u5219\u8bf4\u660eMatplotlib\u5df2\u7ecf\u6210\u529f\u5b89\u88c5\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u7b80\u5355\u7684\u56fe\u5f62\uff1a\u5728Python\u4ea4\u4e92\u5f0f\u547d\u4ee4\u884c\u4e2d\uff0c\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\u53ef\u4ee5\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684\u6298\u7ebf\u56fe\uff1apythonCopy code<code>import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4]) plt.ylabel('some numbers') plt.show() <\/code>\u5982\u679c\u8fd9\u4e2a\u547d\u4ee4\u53ef\u4ee5\u6b63\u5e38\u8fd0\u884c\u5e76\u663e\u793a\u4e00\u4e2a\u6298\u7ebf\u56fe\uff0c\u5219\u8bf4\u660eMatplotlib\u5df2\u7ecf\u6210\u529f\u5b89\u88c5\u3002<\/li>\n\n\n\n<li>\u8fd0\u884cMatplotlib\u7684\u793a\u4f8b\u7a0b\u5e8f\uff1aMatplotlib\u63d0\u4f9b\u4e86\u5927\u91cf\u7684\u793a\u4f8b\u7a0b\u5e8f\uff0c\u53ef\u4ee5\u5e2e\u52a9\u4f60\u5b66\u4e60\u5982\u4f55\u4f7f\u7528Matplotlib\u521b\u5efa\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\u3002\u4f60\u53ef\u4ee5\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\u627e\u5230\u8fd9\u4e9b\u793a\u4f8b\u7a0b\u5e8f\u3002\u5728\u547d\u4ee4\u884c\u4e2d\uff0c\u4f60\u53ef\u4ee5\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\u6765\u67e5\u770bMatplotlib\u7684\u793a\u4f8b\u7a0b\u5e8f\uff1abashCopy code<code>python -m matplotlib.pyplot --examples <\/code>\u8fd9\u5c06\u6253\u5f00\u4e00\u4e2a\u5305\u542b\u6240\u6709\u793a\u4f8b\u7a0b\u5e8f\u7684\u7f51\u9875\uff0c\u4f60\u53ef\u4ee5\u5728\u8fd9\u4e2a\u7f51\u9875\u4e0a\u67e5\u770b\u5e76\u8fd0\u884c\u8fd9\u4e9b\u793a\u4f8b\u7a0b\u5e8f\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u6d4b\u8bd5Matplotlib\u5b89\u88c5\u7684\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u6d4b\u8bd5\u548c\u8c03\u6574\u3002\u5982\u679c\u4f60\u9047\u5230\u4e86\u4efb\u4f55\u95ee\u9898\u6216\u9519\u8bef\uff0c\u8bf7\u53c2\u8003Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u6216\u793e\u533a\u652f\u6301\uff0c\u6216\u8005\u5728Stack Overflow\u7b49\u7f51\u7ad9\u4e0a\u5bfb\u6c42\u5e2e\u52a9\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u521b\u5efa\u56fe\u5f62\u548c\u8f74<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u521b\u5efa\u56fe\u5f62\u548c\u8f74\u662f\u7ed8\u5236\u56fe\u5f62\u7684\u57fa\u672c\u6b65\u9aa4\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u521b\u5efa\u56fe\u5f62\u548c\u8f74\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u521b\u5efa\u56fe\u5f62\u5bf9\u8c61\uff1a\u5728Matplotlib\u4e2d\uff0c\u56fe\u5f62\u5bf9\u8c61\u53ef\u4ee5\u901a\u8fc7\u8c03\u7528<code>plt.figure()<\/code>\u51fd\u6570\u6765\u521b\u5efa\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a<code>fig<\/code>\u7684\u56fe\u5f62\u5bf9\u8c61\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig = plt.figure()<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u8f74\u5bf9\u8c61\uff1a\u5728Matplotlib\u4e2d\uff0c\u8f74\u5bf9\u8c61\u53ef\u4ee5\u901a\u8fc7\u8c03\u7528<code>fig.add_subplot()<\/code>\u51fd\u6570\u6765\u521b\u5efa\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a<code>ax<\/code>\u7684\u8f74\u5bf9\u8c61\uff1apythonCopy code<code>ax = fig.add_subplot(111) <\/code><code>111<\/code>\u53c2\u6570\u8868\u793a\u5c06\u56fe\u5f62\u5206\u62101\u884c1\u5217\u76841\u4e2a\u5b50\u56fe\uff0c\u5e76\u5c06<code>ax<\/code>\u5bf9\u8c61\u653e\u7f6e\u5728\u7b2c1\u4e2a\u5b50\u56fe\u4e2d\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u56fe\u5f62\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>ax.plot()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u56fe\u5f62\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u76f4\u7ebf\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) <\/code>\u8fd9\u5c06\u5728\u56fe\u5f62\u5bf9\u8c61<code>fig<\/code>\u4e2d\u521b\u5efa\u4e00\u4e2a\u8f74\u5bf9\u8c61<code>ax<\/code>\uff0c\u5e76\u5728<code>ax<\/code>\u5bf9\u8c61\u4e0a\u7ed8\u5236\u4e00\u6761\u76f4\u7ebf\u3002<\/li>\n\n\n\n<li>\u8bbe\u7f6e\u8f74\u6807\u7b7e\u548c\u6807\u9898\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>ax.set_xlabel()<\/code>\u3001<code>ax.set_ylabel()<\/code>\u548c<code>ax.set_title()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u8f74\u7684\u6807\u7b7e\u548c\u6807\u9898\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bbe\u7f6e\u8f74\u7684\u6807\u7b7e\u548c\u6807\u9898\uff1apythonCopy code<code>ax.set_xlabel('x label') ax.set_ylabel('y label') ax.set_title('title') <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u8bbe\u7f6ex\u8f74\u548cy\u8f74\u7684\u6807\u7b7e\u4e3a<code>x label<\/code>\u548c<code>y label<\/code>\uff0c\u5e76\u8bbe\u7f6e\u8f74\u7684\u6807\u9898\u4e3a<code>title<\/code>\u3002<\/li>\n\n\n\n<li>\u663e\u793a\u56fe\u5f62\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>plt.show()<\/code>\u51fd\u6570\u6765\u663e\u793a\u56fe\u5f62\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u663e\u793a\u56fe\u5f62\u5bf9\u8c61<code>fig<\/code>\uff1apythonCopy code<code>plt.show()<\/code><\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u521b\u5efa\u56fe\u5f62\u548c\u8f74\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u521b\u5efa\u56fe\u5f62\u548c\u8f74\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u7ed8\u5236\u7ebf\u56fe<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>plot()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u7ebf\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u7ed8\u5236\u7ebf\u56fe\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7ed8\u5236\u7b80\u5355\u7684\u7ebf\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>plot()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u4e00\u6761\u7b80\u5355\u7684\u7ebf\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u5305\u542b4\u4e2a\u70b9\u7684\u7ebf\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u4ece<code>(1, 1)<\/code>\u5230<code>(2, 4)<\/code>\u5230<code>(3, 2)<\/code>\u5230<code>(4, 3)<\/code>\u7684\u7ebf\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u591a\u6761\u7ebf\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u5728\u540c\u4e00\u4e2a\u8f74\u5bf9\u8c61\u4e0a\u7ed8\u5236\u591a\u6761\u7ebf\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e24\u6761\u7ebf\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) ax.plot([1, 2, 3, 4], [5, 2, 4, 1]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e24\u6761\u7ebf\uff0c\u5206\u522b\u4ece<code>(1, 1)<\/code>\u5230<code>(2, 4)<\/code>\u5230<code>(3, 2)<\/code>\u5230<code>(4, 3)<\/code>\u548c\u4ece<code>(1, 5)<\/code>\u5230<code>(2, 2)<\/code>\u5230<code>(3, 4)<\/code>\u5230<code>(4, 1)<\/code>\u7684\u7ebf\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u7ebf\u7684\u989c\u8272\u3001\u7ebf\u578b\u548c\u6807\u8bb0\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>color<\/code>\u3001<code>linestyle<\/code>\u548c<code>marker<\/code>\u53c2\u6570\u6765\u81ea\u5b9a\u4e49\u7ebf\u7684\u989c\u8272\u3001\u7ebf\u578b\u548c\u6807\u8bb0\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u6761\u7ea2\u8272\u7684\u865a\u7ebf\uff0c\u5e26\u6709\u5706\u5f62\u6807\u8bb0\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3], color='r', linestyle='--', marker='o')<\/code><\/li>\n\n\n\n<li>\u8bbe\u7f6e\u8f74\u8303\u56f4\u548c\u523b\u5ea6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>ax.set_xlim()<\/code>\u548c<code>ax.set_ylim()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u8f74\u7684\u8303\u56f4\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bbe\u7f6ex\u8f74\u7684\u8303\u56f4\u4e3a<code>[0, 5]<\/code>\uff0cy\u8f74\u7684\u8303\u56f4\u4e3a<code>[0, 6]<\/code>\uff1apythonCopy code<code>ax.set_xlim([0, 5]) ax.set_ylim([0, 6]) <\/code>\u4f60\u8fd8\u53ef\u4ee5\u4f7f\u7528<code>ax.set_xticks()<\/code>\u548c<code>ax.set_yticks()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u8f74\u7684\u523b\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bbe\u7f6ex\u8f74\u7684\u523b\u5ea6\u4e3a<code>[0, 1, 2, 3, 4, 5]<\/code>\uff0cy\u8f74\u7684\u523b\u5ea6\u4e3a<code>[0, 2, 4, 6]<\/code>\uff1apythonCopy code<code>ax.set_xticks([0, 1, 2, 3, 4, 5]) ax.set_yticks([0, 2, 4, 6])<\/code><\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u7ed8\u5236\u7ebf\u56fe\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u7ed8\u5236\u7ebf\u56fe\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u7ed8\u5236\u7ebf\u56fe\u7684\u6307\u5357\u3002\u4e0b\u9762\u662f\u4e00\u4e2a\u7ed8\u5236\u7b80\u5355\u7ebf\u56fe\u7684\u5b8c\u6574\u793a\u4f8b\u4ee3\u7801\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pythonCopy code<code>import matplotlib.pyplot as plt\n\n# \u521b\u5efa\u56fe\u5f62\u5bf9\u8c61\u548c\u8f74\u5bf9\u8c61\nfig, ax = plt.subplots()\n\n# \u7ed8\u5236\u4e00\u6761\u7b80\u5355\u7684\u7ebf\nax.plot([1, 2, 3, 4], [1, 4, 2, 3])\n\n# \u8bbe\u7f6e\u8f74\u7684\u6807\u7b7e\u548c\u6807\u9898\nax.set_xlabel('x label')\nax.set_ylabel('y label')\nax.set_title('title')\n\n# \u8bbe\u7f6e\u8f74\u7684\u8303\u56f4\u548c\u523b\u5ea6\nax.set_xlim([0, 5])\nax.set_ylim([0, 6])\nax.set_xticks([0, 1, 2, 3, 4, 5])\nax.set_yticks([0, 2, 4, 6])\n\n# \u663e\u793a\u56fe\u5f62\nplt.show()\n<\/code><\/pre>\n\n\n\n<p>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684\u7ebf\u56fe\uff0c\u5e76\u5728\u56fe\u5f62\u4e0a\u6dfb\u52a0\u4e86x\u8f74\u548cy\u8f74\u7684\u6807\u7b7e\u3001\u6807\u9898\u3001\u8303\u56f4\u548c\u523b\u5ea6\u3002\u4f60\u53ef\u4ee5\u6839\u636e\u9700\u8981\u4fee\u6539\u4ee3\u7801\u6765\u521b\u5efa\u4e0d\u540c\u7c7b\u578b\u7684\u7ebf\u56fe\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u7ed8\u5236\u6563\u70b9\u56fe<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>scatter()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u6563\u70b9\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u7ed8\u5236\u6563\u70b9\u56fe\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7ed8\u5236\u7b80\u5355\u7684\u6563\u70b9\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>scatter()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u4e00\u7ec4\u7b80\u5355\u7684\u6563\u70b9\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b4\u4e2a\u70b9\u7684\u6563\u70b9\uff1apythonCopy code<code>ax.scatter([1, 2, 3, 4], [1, 4, 2, 3]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b4\u4e2a\u70b9\u7684\u6563\u70b9\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u5e26\u6709\u989c\u8272\u548c\u5927\u5c0f\u7684\u6563\u70b9\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>c<\/code>\u548c<code>s<\/code>\u53c2\u6570\u6765\u63a7\u5236\u6563\u70b9\u7684\u989c\u8272\u548c\u5927\u5c0f\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u7ec4\u5e26\u6709\u4e0d\u540c\u989c\u8272\u548c\u5927\u5c0f\u7684\u6563\u70b9\uff1apythonCopy code<code>ax.scatter([1, 2, 3, 4], [1, 4, 2, 3], c=['r', 'g', 'b', 'y'], s=[20, 50, 100, 200]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b4\u4e2a\u70b9\u7684\u6563\u70b9\uff0c\u6bcf\u4e2a\u70b9\u7684\u989c\u8272\u548c\u5927\u5c0f\u90fd\u4e0d\u540c\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u6563\u70b9\u7684\u5f62\u72b6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>marker<\/code>\u53c2\u6570\u6765\u81ea\u5b9a\u4e49\u6563\u70b9\u7684\u5f62\u72b6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u7ec4\u7528\u661f\u5f62\u8868\u793a\u7684\u6563\u70b9\uff1apythonCopy code<code>ax.scatter([1, 2, 3, 4], [1, 4, 2, 3], marker='*')<\/code><\/li>\n\n\n\n<li>\u8bbe\u7f6e\u6563\u70b9\u7684\u6807\u7b7e\u548c\u6ce8\u91ca\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>ax.text()<\/code>\u51fd\u6570\u6765\u5728\u6563\u70b9\u4e0a\u6dfb\u52a0\u6807\u7b7e\u548c\u6ce8\u91ca\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5e26\u6709\u6807\u7b7e\u548c\u6ce8\u91ca\u7684\u6563\u70b9\uff1apythonCopy code<code>ax.scatter([1, 2, 3, 4], [1, 4, 2, 3]) ax.text(1, 1, 'point 1') ax.text(2, 4, 'point 2') ax.text(3, 2, 'point 3') ax.text(4, 3, 'point 4') <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b4\u4e2a\u70b9\u7684\u6563\u70b9\uff0c\u5e76\u5728\u6bcf\u4e2a\u70b9\u4e0a\u6dfb\u52a0\u6807\u7b7e\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u7ed8\u5236\u6563\u70b9\u56fe\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u7ed8\u5236\u6563\u70b9\u56fe\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u7ed8\u5236\u67f1\u72b6\u56fe<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>bar()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u67f1\u72b6\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u7ed8\u5236\u67f1\u72b6\u56fe\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7ed8\u5236\u7b80\u5355\u7684\u67f1\u72b6\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>bar()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u4e00\u7ec4\u7b80\u5355\u7684\u67f1\u72b6\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b4\u4e2a\u67f1\u5b50\u7684\u67f1\u72b6\u56fe\uff1apythonCopy code<code>ax.bar([1, 2, 3, 4], [1, 4, 2, 3]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b4\u4e2a\u67f1\u5b50\u7684\u67f1\u72b6\u56fe\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u5806\u53e0\u67f1\u72b6\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>bottom<\/code>\u53c2\u6570\u6765\u7ed8\u5236\u5806\u53e0\u67f1\u72b6\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5806\u53e0\u7684\u67f1\u72b6\u56fe\uff1apythonCopy code<code>ax.bar([1, 2, 3, 4], [1, 4, 2, 3], bottom=[0, 1, 2, 3]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5806\u53e0\u7684\u67f1\u72b6\u56fe\uff0c\u7b2c\u4e00\u4e2a\u67f1\u5b50\u4ece<code>y=1<\/code>\u5f00\u59cb\uff0c\u7b2c\u4e8c\u4e2a\u67f1\u5b50\u4ece<code>y=2<\/code>\u5f00\u59cb\uff0c\u4ee5\u6b64\u7c7b\u63a8\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u6c34\u5e73\u67f1\u72b6\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>barh()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u6c34\u5e73\u67f1\u72b6\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u6c34\u5e73\u67f1\u72b6\u56fe\uff1apythonCopy code<code>ax.barh([1, 2, 3, 4], [1, 4, 2, 3])<\/code><\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u67f1\u5b50\u7684\u989c\u8272\u548c\u5bbd\u5ea6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>color<\/code>\u548c<code>width<\/code>\u53c2\u6570\u6765\u81ea\u5b9a\u4e49\u67f1\u5b50\u7684\u989c\u8272\u548c\u5bbd\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u7ec4\u84dd\u8272\u7684\u5bbd\u5ea6\u4e3a0.5\u7684\u67f1\u72b6\u56fe\uff1apythonCopy code<code>ax.bar([1, 2, 3, 4], [1, 4, 2, 3], color='b', width=0.5)<\/code><\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u7ed8\u5236\u67f1\u72b6\u56fe\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u7ed8\u5236\u67f1\u72b6\u56fe\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u7ed8\u5236\u997c\u56fe<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>pie()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u997c\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u7ed8\u5236\u997c\u56fe\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7ed8\u5236\u7b80\u5355\u7684\u997c\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>pie()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u4e00\u7ec4\u7b80\u5355\u7684\u997c\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b3\u4e2a\u6247\u5f62\u7684\u997c\u56fe\uff1apythonCopy code<code>ax.pie([30, 50, 20]) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b3\u4e2a\u6247\u5f62\u7684\u997c\u56fe\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u5e26\u6709\u6807\u7b7e\u548c\u6ce8\u91ca\u7684\u997c\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>labels<\/code>\u548c<code>autopct<\/code>\u53c2\u6570\u6765\u6dfb\u52a0\u997c\u56fe\u7684\u6807\u7b7e\u548c\u6ce8\u91ca\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u7ec4\u5e26\u6709\u6807\u7b7e\u548c\u6ce8\u91ca\u7684\u997c\u56fe\uff1apythonCopy code<code>ax.pie([30, 50, 20], labels=['A', 'B', 'C'], autopct='%1.1f%%') <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b3\u4e2a\u6247\u5f62\u7684\u997c\u56fe\uff0c\u5e76\u5728\u6bcf\u4e2a\u6247\u5f62\u4e0a\u6dfb\u52a0\u6807\u7b7e\u548c\u6ce8\u91ca\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u997c\u56fe\u7684\u989c\u8272\u548c\u8d77\u59cb\u89d2\u5ea6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>colors<\/code>\u548c<code>startangle<\/code>\u53c2\u6570\u6765\u81ea\u5b9a\u4e49\u997c\u56fe\u7684\u989c\u8272\u548c\u8d77\u59cb\u89d2\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u7ec4\u5e26\u6709\u4e0d\u540c\u989c\u8272\u548c\u8d77\u59cb\u89d2\u5ea6\u7684\u997c\u56fe\uff1apythonCopy code<code>ax.pie([30, 50, 20], colors=['r', 'g', 'b'], startangle=90) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b3\u4e2a\u6247\u5f62\u7684\u997c\u56fe\uff0c\u6bcf\u4e2a\u6247\u5f62\u7684\u989c\u8272\u548c\u8d77\u59cb\u89d2\u5ea6\u90fd\u4e0d\u540c\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u73af\u5f62\u997c\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>wedgeprops<\/code>\u53c2\u6570\u6765\u7ed8\u5236\u73af\u5f62\u997c\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u7ec4\u73af\u5f62\u997c\u56fe\uff1apythonCopy code<code>ax.pie([30, 50, 20], wedgeprops={'width': 0.5}) <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u7ec4\u5305\u542b3\u4e2a\u6247\u5f62\u7684\u73af\u5f62\u997c\u56fe\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u7ed8\u5236\u997c\u56fe\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u7ed8\u5236\u997c\u56fe\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u8bbe\u7f6e\u6807\u9898\u548c\u8f74\u6807\u7b7e<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_title()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u56fe\u5f62\u7684\u6807\u9898\uff0c\u4f7f\u7528<code>set_xlabel()<\/code>\u548c<code>set_ylabel()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u8f74\u7684\u6807\u7b7e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bbe\u7f6e\u56fe\u5f62\u7684\u6807\u9898\u4e3a<code>My Plot<\/code>\uff0cx\u8f74\u7684\u6807\u7b7e\u4e3a<code>X<\/code>\uff0cy\u8f74\u7684\u6807\u7b7e\u4e3a<code>Y<\/code>\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pythonCopy code<code>import matplotlib.pyplot as plt\n\nfig, ax = plt.subplots()\nax.plot([1, 2, 3, 4], [1, 4, 2, 3])\n\nax.set_title('My Plot')\nax.set_xlabel('X')\nax.set_ylabel('Y')\n\nplt.show()\n<\/code><\/pre>\n\n\n\n<p>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684\u7ebf\u56fe\uff0c\u5e76\u5728\u56fe\u5f62\u4e0a\u6dfb\u52a0\u4e86\u6807\u9898\u548c\u8f74\u7684\u6807\u7b7e\u3002\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u6807\u9898\u548c\u6807\u7b7e\u7684\u5185\u5bb9\u548c\u6837\u5f0f\u3002\u4f8b\u5982\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>fontsize<\/code>\u53c2\u6570\u6765\u8bbe\u7f6e\u6807\u9898\u548c\u6807\u7b7e\u7684\u5b57\u4f53\u5927\u5c0f\uff0c\u4f7f\u7528<code>fontweight<\/code>\u53c2\u6570\u6765\u8bbe\u7f6e\u5b57\u4f53\u7684\u7c97\u7ec6\u7a0b\u5ea6\uff0c\u4f7f\u7528<code>color<\/code>\u53c2\u6570\u6765\u8bbe\u7f6e\u5b57\u4f53\u7684\u989c\u8272\u7b49\u7b49\u3002<\/p>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u8bbe\u7f6e\u6807\u9898\u548c\u6807\u7b7e\uff0c\u4e5f\u53ef\u4ee5\u5728\u56fe\u5f62\u5bf9\u8c61<code>fig<\/code>\u4e0a\u8bbe\u7f6e\u3002\u5982\u679c\u4f60\u60f3\u4e3a\u6240\u6709\u7684\u8f74\u5bf9\u8c61\u8bbe\u7f6e\u76f8\u540c\u7684\u6807\u9898\u548c\u6807\u7b7e\uff0c\u53ef\u4ee5\u5728\u56fe\u5f62\u5bf9\u8c61<code>fig<\/code>\u4e0a\u8bbe\u7f6e\u3002\u5982\u679c\u4f60\u53ea\u60f3\u4e3a\u67d0\u4e2a\u8f74\u5bf9\u8c61\u8bbe\u7f6e\u6807\u9898\u548c\u6807\u7b7e\uff0c\u53ef\u4ee5\u5728\u8be5\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u8bbe\u7f6e\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u8bbe\u7f6e\u56fe\u4f8b<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>legend()<\/code>\u51fd\u6570\u6765\u6dfb\u52a0\u56fe\u4f8b\u3002\u56fe\u4f8b\u662f\u7528\u6765\u6807\u8bc6\u56fe\u5f62\u4e2d\u4e0d\u540c\u90e8\u5206\u7684\u8bf4\u660e\uff0c\u901a\u5e38\u7528\u4e8e\u533a\u5206\u4e0d\u540c\u7684\u7ebf\u6761\u3001\u989c\u8272\u6216\u8005\u6837\u5f0f\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u6dfb\u52a0\u56fe\u4f8b\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7ed9\u7ebf\u6761\u6dfb\u52a0\u56fe\u4f8b\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>label<\/code>\u53c2\u6570\u6765\u7ed9\u7ebf\u6761\u6dfb\u52a0\u6807\u7b7e\uff0c\u7136\u540e\u4f7f\u7528<code>legend()<\/code>\u51fd\u6570\u6765\u6dfb\u52a0\u56fe\u4f8b\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u5728\u8be5\u7ebf\u6761\u4e0a\u6dfb\u52a0\u6807\u7b7e<code>line1<\/code>\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3], label='line1') ax.legend() <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u5728\u56fe\u4f8b\u4e2d\u6dfb\u52a0\u6807\u7b7e<code>line1<\/code>\u3002<\/li>\n\n\n\n<li>\u7ed9\u4e0d\u540c\u989c\u8272\u7684\u7ebf\u6761\u6dfb\u52a0\u56fe\u4f8b\uff1a\u5982\u679c\u4f60\u5728\u56fe\u5f62\u4e2d\u4f7f\u7528\u4e86\u591a\u4e2a\u4e0d\u540c\u989c\u8272\u7684\u7ebf\u6761\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>label<\/code>\u53c2\u6570\u6765\u7ed9\u6bcf\u4e2a\u7ebf\u6761\u6dfb\u52a0\u6807\u7b7e\uff0c\u7136\u540e\u4f7f\u7528<code>legend()<\/code>\u51fd\u6570\u6765\u6dfb\u52a0\u56fe\u4f8b\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e24\u6761\u4e0d\u540c\u989c\u8272\u7684\u7ebf\u6761\uff0c\u5e76\u5728\u8fd9\u4e24\u4e2a\u7ebf\u6761\u4e0a\u5206\u522b\u6dfb\u52a0\u6807\u7b7e<code>line1<\/code>\u548c<code>line2<\/code>\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3], 'r', label='line1') ax.plot([1, 2, 3, 4], [3, 2, 4, 1], 'g', label='line2') ax.legend() <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e24\u6761\u4e0d\u540c\u989c\u8272\u7684\u7ebf\u6761\uff0c\u5e76\u5728\u56fe\u4f8b\u4e2d\u5206\u522b\u6dfb\u52a0\u6807\u7b7e<code>line1<\/code>\u548c<code>line2<\/code>\u3002<\/li>\n\n\n\n<li>\u8bbe\u7f6e\u56fe\u4f8b\u7684\u4f4d\u7f6e\u548c\u6837\u5f0f\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>loc<\/code>\u53c2\u6570\u6765\u8bbe\u7f6e\u56fe\u4f8b\u7684\u4f4d\u7f6e\uff0c\u4f7f\u7528<code>frameon<\/code>\u53c2\u6570\u6765\u63a7\u5236\u56fe\u4f8b\u7684\u8fb9\u6846\uff0c\u4f7f\u7528<code>fontsize<\/code>\u53c2\u6570\u6765\u8bbe\u7f6e\u56fe\u4f8b\u7684\u5b57\u4f53\u5927\u5c0f\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u7684\u5de6\u4e0a\u89d2\u7ed8\u5236\u4e00\u4e2a\u6ca1\u6709\u8fb9\u6846\u7684\u56fe\u4f8b\uff0c\u56fe\u4f8b\u7684\u5b57\u4f53\u5927\u5c0f\u4e3a10\uff1apythonCopy code<code>ax.legend(loc='upper left', frameon=False, fontsize=10)<\/code><\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u6dfb\u52a0\u56fe\u4f8b\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u6dfb\u52a0\u56fe\u4f8b\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u8c03\u6574\u5750\u6807\u8f74\u8303\u56f4<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_xlim()<\/code>\u548c<code>set_ylim()<\/code>\u51fd\u6570\u6765\u8c03\u6574\u5750\u6807\u8f74\u7684\u8303\u56f4\u3002\u8fd9\u4e24\u4e2a\u51fd\u6570\u53ef\u4ee5\u63a5\u53d7\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u5143\u7d20\u7684\u5217\u8868\u6216\u5143\u7ec4\u4f5c\u4e3a\u53c2\u6570\uff0c\u5206\u522b\u8868\u793a\u5750\u6807\u8f74\u7684\u8d77\u59cb\u548c\u7ed3\u675f\u4f4d\u7f6e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bbe\u7f6ex\u8f74\u7684\u8303\u56f4\u4e3a<code>[0, 5]<\/code>\uff0cy\u8f74\u7684\u8303\u56f4\u4e3a<code>[0, 10]<\/code>\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pythonCopy code<code>import matplotlib.pyplot as plt\n\nfig, ax = plt.subplots()\nax.plot([1, 2, 3, 4], [1, 4, 2, 3])\n\nax.set_xlim([0, 5])\nax.set_ylim([0, 10])\n\nplt.show()\n<\/code><\/pre>\n\n\n\n<p>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684\u7ebf\u56fe\uff0c\u5e76\u5c06x\u8f74\u548cy\u8f74\u7684\u8303\u56f4\u5206\u522b\u8bbe\u7f6e\u4e3a<code>[0, 5]<\/code>\u548c<code>[0, 10]<\/code>\u3002<\/p>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5982\u679c\u4f60\u53ea\u60f3\u8c03\u6574\u5176\u4e2d\u4e00\u4e2a\u8f74\u7684\u8303\u56f4\uff0c\u53ef\u4ee5\u5c06\u53e6\u4e00\u4e2a\u8f74\u7684\u8303\u56f4\u8bbe\u7f6e\u4e3a<code>None<\/code>\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u53ea\u8c03\u6574y\u8f74\u7684\u8303\u56f4\uff0c\u5c06x\u8f74\u7684\u8303\u56f4\u8bbe\u7f6e\u4e3a\u9ed8\u8ba4\u503c\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pythonCopy code<code>ax.set_xlim([None, 5])\nax.set_ylim([0, 10])\n<\/code><\/pre>\n\n\n\n<p>\u9664\u4e86\u4f7f\u7528<code>set_xlim()<\/code>\u548c<code>set_ylim()<\/code>\u51fd\u6570\u4e4b\u5916\uff0c\u4f60\u8fd8\u53ef\u4ee5\u4f7f\u7528<code>xlim()<\/code>\u548c<code>ylim()<\/code>\u51fd\u6570\u6765\u83b7\u53d6\u5f53\u524d\u5750\u6807\u8f74\u7684\u8303\u56f4\uff0c\u4f7f\u7528<code>autoscale()<\/code>\u51fd\u6570\u6765\u81ea\u52a8\u8c03\u6574\u5750\u6807\u8f74\u7684\u8303\u56f4\uff0c\u4f7f\u7528<code>tight_layout()<\/code>\u51fd\u6570\u6765\u81ea\u52a8\u8c03\u6574\u5b50\u56fe\u7684\u5e03\u5c40\u7b49\u7b49\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u8c03\u6574\u5750\u6807\u8f74\u8303\u56f4\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4fee\u6539\u7ebf\u578b\u548c\u989c\u8272<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>plot()<\/code>\u51fd\u6570\u7684\u7b2c\u4e09\u4e2a\u53c2\u6570\u6765\u6307\u5b9a\u7ebf\u6761\u7684\u6837\u5f0f\u548c\u989c\u8272\u3002\u8fd9\u4e2a\u53c2\u6570\u662f\u4e00\u4e2a\u5b57\u7b26\u4e32\uff0c\u7531\u4e00\u4e2a\u6216\u591a\u4e2a\u5b57\u7b26\u7ec4\u6210\uff0c\u6bcf\u4e2a\u5b57\u7b26\u8868\u793a\u4e00\u79cd\u6837\u5f0f\u6216\u989c\u8272\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u4fee\u6539\u7ebf\u578b\u548c\u989c\u8272\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4fee\u6539\u7ebf\u6761\u989c\u8272\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u5b57\u7b26\u6765\u6307\u5b9a\u7ebf\u6761\u7684\u989c\u8272\uff1a<ul><li><code>'b'<\/code>\uff1a\u84dd\u8272<\/li><li><code>'g'<\/code>\uff1a\u7eff\u8272<\/li><li><code>'r'<\/code>\uff1a\u7ea2\u8272<\/li><li><code>'c'<\/code>\uff1a\u9752\u8272<\/li><li><code>'m'<\/code>\uff1a\u54c1\u7ea2\u8272<\/li><li><code>'y'<\/code>\uff1a\u9ec4\u8272<\/li><li><code>'k'<\/code>\uff1a\u9ed1\u8272<\/li><li><code>'w'<\/code>\uff1a\u767d\u8272<\/li><\/ul>\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u6761\u84dd\u8272\u7684\u7ebf\u6761\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3], 'b')<\/code><\/li>\n\n\n\n<li>\u4fee\u6539\u7ebf\u6761\u6837\u5f0f\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u5b57\u7b26\u6765\u6307\u5b9a\u7ebf\u6761\u7684\u6837\u5f0f\uff1a<ul><li><code>'-'<\/code>\uff1a\u5b9e\u7ebf<\/li><li><code>'--'<\/code>\uff1a\u865a\u7ebf<\/li><li><code>':'<\/code>\uff1a\u70b9\u7ebf<\/li><li><code>'-.'<\/code>\uff1a\u865a\u70b9\u7ebf<\/li><\/ul>\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u6761\u7ea2\u8272\u7684\u865a\u7ebf\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3], 'r--')<\/code><\/li>\n\n\n\n<li>\u4fee\u6539\u7ebf\u6761\u5bbd\u5ea6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>linewidth<\/code>\u53c2\u6570\u6765\u6307\u5b9a\u7ebf\u6761\u7684\u5bbd\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u6761\u5bbd\u5ea6\u4e3a2\u7684\u7eff\u8272\u5b9e\u7ebf\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3], 'g-', linewidth=2)<\/code><\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u4fee\u6539\u7ebf\u578b\u548c\u989c\u8272\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u4fee\u6539\u7ebf\u578b\u548c\u989c\u8272\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u6dfb\u52a0\u7f51\u683c\u7ebf\u548c\u80cc\u666f\u8272<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>grid()<\/code>\u51fd\u6570\u6765\u6dfb\u52a0\u7f51\u683c\u7ebf\uff0c\u4f7f\u7528<code>set_facecolor()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u8f74\u5bf9\u8c61\u7684\u80cc\u666f\u8272\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u6dfb\u52a0\u7f51\u683c\u7ebf\u548c\u80cc\u666f\u8272\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u6dfb\u52a0\u6c34\u5e73\u548c\u5782\u76f4\u7f51\u683c\u7ebf\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>grid()<\/code>\u51fd\u6570\u6765\u6dfb\u52a0\u6c34\u5e73\u548c\u5782\u76f4\u7f51\u683c\u7ebf\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u7f51\u683c\u7ebf\u662f\u7070\u8272\u7684\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u6dfb\u52a0\u6c34\u5e73\u548c\u5782\u76f4\u7f51\u683c\u7ebf\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) ax.grid() <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u6dfb\u52a0\u6c34\u5e73\u548c\u5782\u76f4\u7f51\u683c\u7ebf\u3002<\/li>\n\n\n\n<li>\u4fee\u6539\u7f51\u683c\u7ebf\u7684\u6837\u5f0f\u548c\u989c\u8272\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>grid()<\/code>\u51fd\u6570\u7684\u53c2\u6570\u6765\u4fee\u6539\u7f51\u683c\u7ebf\u7684\u6837\u5f0f\u548c\u989c\u8272\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u5c06\u6c34\u5e73\u548c\u5782\u76f4\u7f51\u683c\u7ebf\u7684\u6837\u5f0f\u8bbe\u7f6e\u4e3a\u865a\u7ebf\uff0c\u989c\u8272\u8bbe\u7f6e\u4e3a\u9ed1\u8272\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) ax.grid(linestyle='--', color='k') <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u5c06\u6c34\u5e73\u548c\u5782\u76f4\u7f51\u683c\u7ebf\u7684\u6837\u5f0f\u8bbe\u7f6e\u4e3a\u865a\u7ebf\uff0c\u989c\u8272\u8bbe\u7f6e\u4e3a\u9ed1\u8272\u3002<\/li>\n\n\n\n<li>\u4fee\u6539\u8f74\u5bf9\u8c61\u7684\u80cc\u666f\u8272\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_facecolor()<\/code>\u51fd\u6570\u6765\u8bbe\u7f6e\u8f74\u5bf9\u8c61\u7684\u80cc\u666f\u8272\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u5c06\u8f74\u5bf9\u8c61\u7684\u80cc\u666f\u8272\u8bbe\u7f6e\u4e3a\u9ec4\u8272\uff1apythonCopy code<code>ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) ax.set_facecolor('yellow') <\/code>\u8fd9\u5c06\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u7ed8\u5236\u4e00\u6761\u7ebf\u6761\uff0c\u5e76\u5c06\u8f74\u5bf9\u8c61\u7684\u80cc\u666f\u8272\u8bbe\u7f6e\u4e3a\u9ec4\u8272\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u5728\u56fe\u5f62\u5bf9\u8c61<code>fig<\/code>\u4e0a\u8bbe\u7f6e\u7f51\u683c\u7ebf\u548c\u80cc\u666f\u8272\uff0c\u4e5f\u53ef\u4ee5\u5728\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u8bbe\u7f6e\u3002\u5982\u679c\u4f60\u60f3\u4e3a\u6240\u6709\u7684\u8f74\u5bf9\u8c61\u8bbe\u7f6e\u76f8\u540c\u7684\u7f51\u683c\u7ebf\u548c\u80cc\u666f\u8272\uff0c\u53ef\u4ee5\u5728\u56fe\u5f62\u5bf9\u8c61<code>fig<\/code>\u4e0a\u8bbe\u7f6e\u3002\u5982\u679c\u4f60\u53ea\u60f3\u4e3a\u67d0\u4e2a\u8f74\u5bf9\u8c61\u8bbe\u7f6e\u7f51\u683c\u7ebf\u548c\u80cc\u666f\u8272\uff0c\u53ef\u4ee5\u5728\u8be5\u8f74\u5bf9\u8c61<code>ax<\/code>\u4e0a\u8bbe\u7f6e\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u521b\u5efa\u5b50\u56fe<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots()<\/code>\u51fd\u6570\u6765\u521b\u5efa\u5b50\u56fe\u3002\u5b50\u56fe\u662f\u5728\u4e00\u4e2a\u56fe\u5f62\u4e2d\u7ed8\u5236\u591a\u4e2a\u8f74\u5bf9\u8c61\u7684\u4e00\u79cd\u65b9\u6cd5\uff0c\u6bcf\u4e2a\u8f74\u5bf9\u8c61\u53ef\u4ee5\u7ed8\u5236\u4e0d\u540c\u7684\u6570\u636e\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u521b\u5efa\u5b50\u56fe\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u521b\u5efa\u4e00\u4e2a\u5b50\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots()<\/code>\u51fd\u6570\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e00\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e00\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, ax = plt.subplots() ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) plt.show()<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u591a\u4e2a\u5b50\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots()<\/code>\u51fd\u6570\u521b\u5efa\u5305\u542b\u591a\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u6bcf\u4e2a\u8f74\u5bf9\u8c61\u90fd\u53ef\u4ee5\u7ed8\u5236\u4e0d\u540c\u7684\u6570\u636e\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u5b50\u56fe\u5e03\u5c40\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots()<\/code>\u51fd\u6570\u7684\u53c2\u6570\u6765\u81ea\u5b9a\u4e49\u5b50\u56fe\u7684\u5e03\u5c40\u3002\u4f8b\u5982\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>nrows<\/code>\u548c<code>ncols<\/code>\u53c2\u6570\u6765\u6307\u5b9a\u5b50\u56fe\u7684\u884c\u6570\u548c\u5217\u6570\uff0c\u4f7f\u7528<code>gridspec_kw<\/code>\u53c2\u6570\u6765\u6307\u5b9a\u5b50\u56fe\u7684\u5e03\u5c40\uff0c\u4f7f\u7528<code>figsize<\/code>\u53c2\u6570\u6765\u6307\u5b9a\u5b50\u56fe\u7684\u5927\u5c0f\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u7b2c\u4e00\u4e2a\u8f74\u5bf9\u8c61\u8de8\u8d8a\u6574\u4e2a\u7b2c\u4e00\u884c\uff0c\u7b2c\u4e8c\u4e2a\u8f74\u5bf9\u8c61\u8de8\u8d8a\u6574\u4e2a\u7b2c\u4e8c\u884c\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(nrows=2, ncols=1, gridspec_kw={'height_ratios': [2, 1]}, figsize=(6, 6)) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u7b2c\u4e00\u4e2a\u8f74\u5bf9\u8c61\u8de8\u8d8a\u6574\u4e2a\u7b2c\u4e00\u884c\uff0c\u7b2c\u4e8c\u4e2a\u8f74\u5bf9\u8c61\u8de8\u8d8a\u6574\u4e2a\u7b2c\u4e8c\u884c\uff0c\u5e76\u4e14\u5b50\u56fe\u7684\u5927\u5c0f\u4e3a<code>(6, 6)<\/code>\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u8fd9\u4e9b\u662f\u4e00\u4e9b\u521b\u5efa\u5b50\u56fe\u7684\u57fa\u672c\u65b9\u6cd5\uff0c\u4f46\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u5176\u4ed6\u7684\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u521b\u5efa\u5b50\u56fe\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u8c03\u6574\u5b50\u56fe\u95f4\u8ddd<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots_adjust()<\/code>\u51fd\u6570\u6765\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u95f4\u8ddd\u3002\u8fd9\u4e2a\u51fd\u6570\u53ef\u4ee5\u63a5\u53d7\u4e00\u4e9b\u53c2\u6570\uff0c\u7528\u4e8e\u63a7\u5236\u5b50\u56fe\u4e4b\u95f4\u7684\u5782\u76f4\u548c\u6c34\u5e73\u95f4\u8ddd\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u8c03\u6574\u5b50\u56fe\u95f4\u8ddd\u7684\u65b9\u6cd5\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u95f4\u8ddd\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>wspace<\/code>\u53c2\u6570\u6765\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u95f4\u8ddd\u3002\u8fd9\u4e2a\u53c2\u6570\u7684\u503c\u4e3a\u5b50\u56fe\u5bbd\u5ea6\u7684\u6bd4\u4f8b\uff0c\u4f8b\u5982\uff0c\u5982\u679c<code>wspace<\/code>\u7684\u503c\u4e3a<code>0.5<\/code>\uff0c\u90a3\u4e48\u76f8\u90bb\u4e24\u4e2a\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u95f4\u8ddd\u5c31\u662f\u5b83\u4eec\u7684\u5bbd\u5ea6\u7684<code>0.5<\/code>\u500d\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8c03\u6574\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u95f4\u8ddd\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.subplots_adjust(wspace=0.5) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5c06\u5b83\u4eec\u4e4b\u95f4\u7684\u6c34\u5e73\u95f4\u8ddd\u8bbe\u7f6e\u4e3a\u5b83\u4eec\u7684\u5bbd\u5ea6\u7684<code>0.5<\/code>\u500d\u3002<\/li>\n\n\n\n<li>\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u5782\u76f4\u95f4\u8ddd\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>hspace<\/code>\u53c2\u6570\u6765\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u5782\u76f4\u95f4\u8ddd\u3002\u8fd9\u4e2a\u53c2\u6570\u7684\u503c\u4e3a\u5b50\u56fe\u9ad8\u5ea6\u7684\u6bd4\u4f8b\uff0c\u4f8b\u5982\uff0c\u5982\u679c<code>hspace<\/code>\u7684\u503c\u4e3a<code>0.5<\/code>\uff0c\u90a3\u4e48\u76f8\u90bb\u4e24\u4e2a\u5b50\u56fe\u4e4b\u95f4\u7684\u5782\u76f4\u95f4\u8ddd\u5c31\u662f\u5b83\u4eec\u7684\u9ad8\u5ea6\u7684<code>0.5<\/code>\u500d\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8c03\u6574\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u4e4b\u95f4\u7684\u5782\u76f4\u95f4\u8ddd\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.subplots_adjust(hspace=0.5) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5c06\u5b83\u4eec\u4e4b\u95f4\u7684\u5782\u76f4\u95f4\u8ddd\u8bbe\u7f6e\u4e3a\u5b83\u4eec\u7684\u9ad8\u5ea6\u7684<code>0.5<\/code>\u500d\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots_adjust()<\/code>\u51fd\u6570\u6765\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u95f4\u8ddd\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528<code>tight_layout()<\/code>\u51fd\u6570\u6765\u81ea\u52a8\u8c03\u6574\u5b50\u56fe\u7684\u95f4\u8ddd\u3002<code>tight_layout()<\/code>\u51fd\u6570\u4f1a\u81ea\u52a8\u8ba1\u7b97\u5b50\u56fe\u4e4b\u95f4\u7684\u6700\u5c0f\u95f4\u8ddd\uff0c\u4ee5\u786e\u4fdd\u6240\u6709\u5b50\u56fe\u90fd\u80fd\u591f\u88ab\u5b8c\u6574\u5730\u663e\u793a\u5728\u56fe\u5f62\u4e2d\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u8c03\u6574\u5b50\u56fe\u95f4\u8ddd\u7684<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u65b9\u6cd5\u548c\u8bf4\u660e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u540c\u65f6\u8c03\u6574\u6c34\u5e73\u548c\u5782\u76f4\u95f4\u8ddd\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u540c\u65f6\u4f7f\u7528<code>wspace<\/code>\u548c<code>hspace<\/code>\u53c2\u6570\u6765\u8c03\u6574\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u548c\u5782\u76f4\u95f4\u8ddd\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8c03\u6574\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u548c\u5782\u76f4\u95f4\u8ddd\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.subplots_adjust(wspace=0.5, hspace=0.5) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5c06\u5b83\u4eec\u4e4b\u95f4\u7684\u6c34\u5e73\u548c\u5782\u76f4\u95f4\u8ddd\u90fd\u8bbe\u7f6e\u4e3a\u5b83\u4eec\u7684\u5bbd\u5ea6\u548c\u9ad8\u5ea6\u7684<code>0.5<\/code>\u500d\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u5b50\u56fe\u4e4b\u95f4\u7684\u95f4\u8ddd\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots_adjust()<\/code>\u51fd\u6570\u7684\u5176\u4ed6\u53c2\u6570\u6765\u81ea\u5b9a\u4e49\u5b50\u56fe\u4e4b\u95f4\u7684\u95f4\u8ddd\u3002\u4f8b\u5982\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>left<\/code>\u3001<code>right<\/code>\u3001<code>bottom<\/code>\u548c<code>top<\/code>\u53c2\u6570\u6765\u63a7\u5236\u56fe\u5f62\u7684\u8fb9\u754c\u5927\u5c0f\u548c\u5b50\u56fe\u7684\u4f4d\u7f6e\uff0c\u4f7f\u7528<code>w_pad<\/code>\u548c<code>h_pad<\/code>\u53c2\u6570\u6765\u63a7\u5236\u5b50\u56fe\u4e4b\u95f4\u7684\u6c34\u5e73\u548c\u5782\u76f4\u95f4\u8ddd\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u81ea\u5b9a\u4e49\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u4e4b\u95f4\u7684\u95f4\u8ddd\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.subplots_adjust(left=0.1, right=0.9, bottom=0.1, top=0.9, wspace=0.5, hspace=0.5) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u81ea\u5b9a\u4e49\u5b83\u4eec\u4e4b\u95f4\u7684\u95f4\u8ddd\u548c\u4f4d\u7f6e\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u8c03\u6574\u5b50\u56fe\u95f4\u8ddd\u65f6\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u7ed3\u5408\u5176\u4ed6\u7684\u53c2\u6570\u548c\u51fd\u6570\u6765\u5b9e\u73b0\u66f4\u590d\u6742\u7684\u8c03\u6574\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u8c03\u6574\u5b50\u56fe\u95f4\u8ddd\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5171\u4eab\u5750\u6807\u8f74<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>subplots()<\/code>\u51fd\u6570\u7684<code>sharex<\/code>\u548c<code>sharey<\/code>\u53c2\u6570\u6765\u5171\u4eab\u5750\u6807\u8f74\u3002\u5171\u4eab\u5750\u6807\u8f74\u53ef\u4ee5\u4f7f\u591a\u4e2a\u5b50\u56fe\u4e4b\u95f4\u7684\u5750\u6807\u8f74\u4fdd\u6301\u4e00\u81f4\uff0c\u4ee5\u4fbf\u66f4\u597d\u5730\u8fdb\u884c\u6bd4\u8f83\u548c\u5206\u6790\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u5171\u4eab\u5750\u6807\u8f74\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5171\u4eabx\u8f74\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>sharex<\/code>\u53c2\u6570\u6765\u5171\u4eab\u5b50\u56fe\u4e4b\u95f4\u7684x\u8f74\u3002\u8fd9\u4e2a\u53c2\u6570\u53ef\u4ee5\u63a5\u53d7\u4e00\u4e2a\u8f74\u5bf9\u8c61\u4f5c\u4e3a\u503c\uff0c\u7528\u4e8e\u6307\u5b9a\u5171\u4eab\u54ea\u4e2a\u8f74\u5bf9\u8c61\u7684x\u8f74\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5171\u4eab\u5b83\u4eec\u4e4b\u95f4\u7684x\u8f74\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2, sharex=True) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5171\u4eab\u5b83\u4eec\u4e4b\u95f4\u7684x\u8f74\u3002<\/li>\n\n\n\n<li>\u5171\u4eaby\u8f74\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>sharey<\/code>\u53c2\u6570\u6765\u5171\u4eab\u5b50\u56fe\u4e4b\u95f4\u7684y\u8f74\u3002\u8fd9\u4e2a\u53c2\u6570\u53ef\u4ee5\u63a5\u53d7\u4e00\u4e2a\u8f74\u5bf9\u8c61\u4f5c\u4e3a\u503c\uff0c\u7528\u4e8e\u6307\u5b9a\u5171\u4eab\u54ea\u4e2a\u8f74\u5bf9\u8c61\u7684y\u8f74\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5171\u4eab\u5b83\u4eec\u4e4b\u95f4\u7684y\u8f74\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2, sharey=True) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5171\u4eab\u5b83\u4eec\u4e4b\u95f4\u7684y\u8f74\u3002<\/li>\n\n\n\n<li>\u540c\u65f6\u5171\u4eabx\u8f74\u548cy\u8f74\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u540c\u65f6\u4f7f\u7528<code>sharex<\/code>\u548c<code>sharey<\/code>\u53c2\u6570\u6765\u5171\u4eab\u5b50\u56fe\u4e4b\u95f4\u7684x\u8f74\u548cy\u8f74\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5171\u4eab\u5b83\u4eec\u4e4b\u95f4\u7684x\u8f74\u548cy\u8f74\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2, sharex=True, sharey=True) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u5171\u4eab\u5b83\u4eec\u4e4b\u95f4\u7684x\u8f74\u548cy\u8f74\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u5171\u4eab\u5750\u6807\u8f74\u65f6\uff0c\u5b50\u56fe\u4e4b\u95f4\u7684\u6570\u636e\u8303\u56f4\u5e94\u8be5<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u5c3d\u53ef\u80fd\u76f8\u540c\uff0c\u4ee5\u4fbf\u66f4\u597d\u5730\u8fdb\u884c\u6bd4\u8f83\u548c\u5206\u6790\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u5171\u4eab\u5750\u6807\u8f74\u7684\u6307\u5357\u3002\u53e6\u5916\uff0c\u9664\u4e86\u4f7f\u7528<code>subplots()<\/code>\u51fd\u6570\u7684<code>sharex<\/code>\u548c<code>sharey<\/code>\u53c2\u6570\u6765\u5171\u4eab\u5750\u6807\u8f74\u4e4b\u5916\uff0cMatplotlib\u8fd8\u63d0\u4f9b\u4e86\u4e00\u4e9b\u5176\u4ed6\u7684\u51fd\u6570\u548c\u65b9\u6cd5\uff0c\u7528\u4e8e\u66f4\u7075\u6d3b\u548c\u7cbe\u7ec6\u5730\u63a7\u5236\u5b50\u56fe\u4e4b\u95f4\u7684\u5750\u6807\u8f74\uff0c\u4f8b\u5982<code>AxesGrid<\/code>\u3001<code>make_axes_locatable()<\/code>\u548c<code>GridSpec<\/code>\u7b49\u3002\u5728\u5b9e\u9645\u4f7f\u7528\u4e2d\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9\u4e0d\u540c\u7684\u65b9\u6cd5\u548c\u5de5\u5177\u6765\u5b9e\u73b0\u5171\u4eab\u5750\u6807\u8f74\u548c\u5176\u4ed6\u7684\u9700\u6c42\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u6dfb\u52a0\u5b50\u56fe\u6807\u9898<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_title()<\/code>\u65b9\u6cd5\u4e3a\u5b50\u56fe\u6dfb\u52a0\u6807\u9898\u3002\u8fd9\u4e2a\u65b9\u6cd5\u53ef\u4ee5\u63a5\u53d7\u4e00\u4e2a\u5b57\u7b26\u4e32\u4f5c\u4e3a\u6807\u9898\u7684\u6587\u672c\u5185\u5bb9\uff0c\u7528\u4e8e\u63cf\u8ff0\u5b50\u56fe\u6240\u8868\u793a\u7684\u6570\u636e\u6216\u4fe1\u606f\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u6dfb\u52a0\u5b50\u56fe\u6807\u9898\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u6dfb\u52a0\u5355\u4e2a\u5b50\u56fe\u7684\u6807\u9898\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_title()<\/code>\u65b9\u6cd5\u4e3a\u5355\u4e2a\u5b50\u56fe\u6dfb\u52a0\u6807\u9898\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4e3a\u4e00\u4e2a\u8f74\u5bf9\u8c61\u6dfb\u52a0\u6807\u9898\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, ax = plt.subplots() ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) ax.set_title('Line Plot') plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e00\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u4e3a\u5b83\u6dfb\u52a0\u4e00\u4e2a\u6807\u9898\u3002<\/li>\n\n\n\n<li>\u6dfb\u52a0\u591a\u4e2a\u5b50\u56fe\u7684\u6807\u9898\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_title()<\/code>\u65b9\u6cd5\u4e3a\u591a\u4e2a\u5b50\u56fe\u6dfb\u52a0\u6807\u9898\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4e3a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\u5206\u522b\u6dfb\u52a0\u6807\u9898\uff1apythonCopy code<code>import matplotlib.pyplot as plt fig, axs = plt.subplots(2) axs[0].plot([1, 2, 3, 4], [1, 4, 2, 3]) axs[0].set_title('Line Plot 1') axs[1].plot([1, 2, 3, 4], [4, 2, 3, 1]) axs[1].set_title('Line Plot 2') plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u4e24\u4e2a\u8f74\u5bf9\u8c61\u7684\u5b50\u56fe\uff0c\u5e76\u4e3a\u5b83\u4eec\u5206\u522b\u6dfb\u52a0\u6807\u9898\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u6dfb\u52a0\u5b50\u56fe\u6807\u9898\u65f6\u9700\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u64cd\u4f5c\u548c\u8c03\u6574\u3002\u5982\u679c\u5b50\u56fe\u8fc7\u591a\uff0c\u53ef\u4ee5\u8003\u8651\u4f7f\u7528\u5176\u4ed6\u7684\u5e03\u5c40\u5de5\u5177\u548c\u51fd\u6570\uff0c\u4f8b\u5982<code>GridSpec<\/code>\u3001<code>subplots_adjust()<\/code>\u548c<code>tight_layout()<\/code>\u7b49\uff0c\u6765\u4f18\u5316\u5b50\u56fe\u7684\u5e03\u5c40\u548c\u663e\u793a\u6548\u679c\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u6dfb\u52a0\u5b50\u56fe\u6807\u9898\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca3D\u6563\u70b9\u56fe<\/p>\n\n\n\n<p>3D\u6563\u70b9\u56fe\u662f\u4e00\u79cd\u5728\u4e09\u7ef4\u7a7a\u95f4\u4e2d\u5c55\u793a\u6570\u636e\u70b9\u7684\u53ef\u89c6\u5316\u56fe\u8868\u3002\u5b83\u901a\u5e38\u7528\u4e8e\u663e\u793a\u4e09\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u5173\u7cfb\uff0c\u5176\u4e2d\u6bcf\u4e2a\u6570\u636e\u70b9\u90fd\u7531\u4e09\u4e2a\u503c\u7ec4\u6210\u3002\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>mplot3d<\/code>\u5de5\u5177\u5305\u7684<code>Axes3D<\/code>\u5bf9\u8c61\u6765\u521b\u5efa3D\u6563\u70b9\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u521b\u5efa3D\u6563\u70b9\u56fe\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u5165\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u5bfc\u5165<code>mplot3d<\/code>\u5de5\u5177\u5305\u7684<code>Axes3D<\/code>\u5bf9\u8c61\uff0c\u4ee5\u53ca\u5176\u4ed6\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff0c\u6765\u521b\u5efa3D\u6563\u70b9\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5bfc\u5165\u9700\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1apythonCopy code<code>import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u6570\u636e\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u521b\u5efa\u4e00\u4e9b\u6570\u636e\uff0c\u7528\u4e8e\u8868\u793a\u8981\u7ed8\u5236\u7684\u6563\u70b9\u56fe\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e9b\u968f\u673a\u7684\u4e09\u7ef4\u6570\u636e\uff1apythonCopy code<code>np.random.seed(123) x = np.random.normal(size=500) y = np.random.normal(size=500) z = np.random.normal(size=500)<\/code><\/li>\n\n\n\n<li>\u521b\u5efa3D\u6563\u70b9\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>scatter()<\/code>\u65b9\u6cd5\u6765\u521b\u5efa3D\u6563\u70b9\u56fe\u3002\u8fd9\u4e2a\u65b9\u6cd5\u53ef\u4ee5\u63a5\u53d7\u4e09\u4e2a\u6570\u7ec4\u4f5c\u4e3a\u53c2\u6570\uff0c\u7528\u4e8e\u6307\u5b9a\u6bcf\u4e2a\u6570\u636e\u70b9\u7684x\u3001y\u3001z\u5750\u6807\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a3D\u6563\u70b9\u56fe\uff0c\u5e76\u663e\u793a\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\uff1apythonCopy code<code>fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.scatter(x, y, z) ax.set_xlabel('X Label') ax.set_ylabel('Y Label') ax.set_zlabel('Z Label') plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\u76843D\u6563\u70b9\u56fe\uff0c\u5e76\u4e3a\u5b83\u4eec\u6dfb\u52a0x\u3001y\u3001z\u5750\u6807\u8f74\u6807\u7b7e\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e493D\u6563\u70b9\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u5404\u79cd\u65b9\u6cd5\u548c\u5c5e\u6027\u6765\u81ea\u5b9a\u4e493D\u6563\u70b9\u56fe\uff0c\u4f8b\u5982\u8c03\u6574\u6563\u70b9\u7684\u5927\u5c0f\u3001\u989c\u8272\u548c\u900f\u660e\u5ea6\uff0c\u6dfb\u52a0\u5750\u6807\u8f74\u6807\u7b7e\u548c\u6807\u9898\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u81ea\u5b9a\u4e49\u4e00\u4e2a3D\u6563\u70b9\u56fe\uff0c\u5e76\u5c06\u5b83\u7684\u6563\u70b9\u5927\u5c0f\u3001\u989c\u8272\u548c\u900f\u660e\u5ea6\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff1apythonCopy code<code>fig = plt.figure() ax = fig.add_subplot(111, projection='3d') c = np.random.randint(0, 10, size=500) s = np.random.randint(100, 1000, size=500) alpha = np.random.uniform(0.5, 1, size=500) ax.scatter(x, y, z, c=c, s=s, alpha=alpha) ax.set_xlabel('X Label') ax.set_ylabel('Y Label') ax.set_zlabel('Z Label') ax.set_title('3D Scatter Plot') plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u968f\u673a\u751f\u6210\u7684<\/li>\n<\/ol>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u6570\u636e\u70b9\u76843D\u6563\u70b9\u56fe\uff0c\u5e76\u5c06\u5b83\u4eec\u7684\u5927\u5c0f\u3001\u989c\u8272\u548c\u900f\u660e\u5ea6\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff0c\u5e76\u6dfb\u52a0\u4e86x\u3001y\u3001z\u5750\u6807\u8f74\u6807\u7b7e\u548c\u6807\u9898\u3002<\/p>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u521b\u5efa3D\u6563\u70b9\u56fe\u9700\u8981\u5bf9\u6570\u636e\u70b9\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u5e76\u5bf9\u6570\u636e\u7684\u683c\u5f0f\u548c\u7c7b\u578b\u6709\u4e00\u5b9a\u7684\u638c\u63e1\u3002\u53e6\u5916\uff0cMatplotlib\u8fd8\u63d0\u4f9b\u4e86\u5176\u4ed6\u7c7b\u578b\u76843D\u56fe\u8868\uff0c\u4f8b\u59823D\u7ebf\u56fe\u30013D\u66f2\u9762\u56fe\u548c3D\u6761\u5f62\u56fe\u7b49\uff0c\u53ef\u4ee5\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9\u4e0d\u540c\u7684\u56fe\u8868\u7c7b\u578b\u6765\u5c55\u793a\u548c\u5206\u6790\u6570\u636e\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u76843D\u56fe\u8868\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca3D\u67f1\u72b6\u56fe<\/p>\n\n\n\n<p>3D\u67f1\u72b6\u56fe\u662f\u4e00\u79cd\u5728\u4e09\u7ef4\u7a7a\u95f4\u4e2d\u5c55\u793a\u6570\u636e\u7684\u53ef\u89c6\u5316\u56fe\u8868\uff0c\u5b83\u901a\u5e38\u7528\u4e8e\u663e\u793a\u4e09\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u5173\u7cfb\uff0c\u5176\u4e2d\u6bcf\u4e2a\u6570\u636e\u70b9\u90fd\u7531\u4e09\u4e2a\u503c\u7ec4\u6210\u3002\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>mplot3d<\/code>\u5de5\u5177\u5305\u7684<code>Axes3D<\/code>\u5bf9\u8c61\u6765\u521b\u5efa3D\u67f1\u72b6\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u521b\u5efa3D\u67f1\u72b6\u56fe\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u5165\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u5bfc\u5165<code>mplot3d<\/code>\u5de5\u5177\u5305\u7684<code>Axes3D<\/code>\u5bf9\u8c61\uff0c\u4ee5\u53ca\u5176\u4ed6\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff0c\u6765\u521b\u5efa3D\u67f1\u72b6\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5bfc\u5165\u9700\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1apythonCopy code<code>import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u6570\u636e\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u521b\u5efa\u4e00\u4e9b\u6570\u636e\uff0c\u7528\u4e8e\u8868\u793a\u8981\u7ed8\u5236\u7684\u67f1\u72b6\u56fe\u7684\u4f4d\u7f6e\u3001\u9ad8\u5ea6\u548c\u5bbd\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e9b\u968f\u673a\u7684\u4e09\u7ef4\u6570\u636e\uff1apythonCopy code<code>np.random.seed(123) x = np.random.randint(1, 10, size=10) y = np.random.randint(1, 10, size=10) z = np.random.randint(1, 10, size=10)<\/code><\/li>\n\n\n\n<li>\u521b\u5efa3D\u67f1\u72b6\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>bar3d()<\/code>\u65b9\u6cd5\u6765\u521b\u5efa3D\u67f1\u72b6\u56fe\u3002\u8fd9\u4e2a\u65b9\u6cd5\u53ef\u4ee5\u63a5\u53d7\u516d\u4e2a\u6570\u7ec4\u4f5c\u4e3a\u53c2\u6570\uff0c\u7528\u4e8e\u6307\u5b9a\u6bcf\u4e2a\u67f1\u72b6\u56fe\u7684x\u3001y\u3001z\u5750\u6807\u3001\u9ad8\u5ea6\u548c\u5bbd\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a3D\u67f1\u72b6\u56fe\uff0c\u5e76\u663e\u793a\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\uff1apythonCopy code<code>fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.bar3d(x, y, np.zeros(len(z)), 0.5, 0.5, z) ax.set_xlabel('X Label') ax.set_ylabel('Y Label') ax.set_zlabel('Z Label') plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\u76843D\u67f1\u72b6\u56fe\uff0c\u5e76\u4e3a\u5b83\u4eec\u6dfb\u52a0x\u3001y\u3001z\u5750\u6807\u8f74\u6807\u7b7e\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e493D\u67f1\u72b6\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u5404\u79cd\u65b9\u6cd5\u548c\u5c5e\u6027\u6765\u81ea\u5b9a\u4e493D\u67f1\u72b6\u56fe\uff0c\u4f8b\u5982\u8c03\u6574\u67f1\u72b6\u56fe\u7684\u989c\u8272\u3001\u900f\u660e\u5ea6\u548c\u9634\u5f71\uff0c\u6dfb\u52a0\u5750\u6807\u8f74\u6807\u7b7e\u548c\u6807\u9898\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u81ea\u5b9a\u4e49\u4e00\u4e2a3D\u67f1\u72b6\u56fe\uff0c\u5e76\u5c06\u5b83\u7684\u989c\u8272\u548c\u900f\u660e\u5ea6\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff1apythonCopy code<code>fig = plt.figure() ax = fig.add_subplot(111, projection='3d') c = np.random.randint(0, 10, size=10) alpha = np.random.uniform(0.5, 1, size=10) ax.bar3d(x, y, np.zeros(len(z)), 0.5, 0.5, z, color=c<\/code><\/li>\n<\/ol>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca3D\u66f2\u9762\u56fe<\/p>\n\n\n\n<p>3D\u66f2\u9762\u56fe\u662f\u4e00\u79cd\u5728\u4e09\u7ef4\u7a7a\u95f4\u4e2d\u5c55\u793a\u6570\u636e\u7684\u53ef\u89c6\u5316\u56fe\u8868\uff0c\u5b83\u901a\u5e38\u7528\u4e8e\u663e\u793a\u4e09\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u5173\u7cfb\uff0c\u5176\u4e2d\u6bcf\u4e2a\u6570\u636e\u70b9\u90fd\u7531\u4e09\u4e2a\u503c\u7ec4\u6210\u3002\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>mplot3d<\/code>\u5de5\u5177\u5305\u7684<code>Axes3D<\/code>\u5bf9\u8c61\u6765\u521b\u5efa3D\u66f2\u9762\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u521b\u5efa3D\u66f2\u9762\u56fe\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u5165\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u5bfc\u5165<code>mplot3d<\/code>\u5de5\u5177\u5305\u7684<code>Axes3D<\/code>\u5bf9\u8c61\uff0c\u4ee5\u53ca\u5176\u4ed6\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff0c\u6765\u521b\u5efa3D\u66f2\u9762\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5bfc\u5165\u9700\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1apythonCopy code<code>import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u6570\u636e\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u521b\u5efa\u4e00\u4e9b\u6570\u636e\uff0c\u7528\u4e8e\u8868\u793a\u8981\u7ed8\u5236\u7684\u66f2\u9762\u56fe\u7684\u4f4d\u7f6e\u548c\u9ad8\u5ea6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e9b\u968f\u673a\u7684\u4e09\u7ef4\u6570\u636e\uff1apythonCopy code<code>np.random.seed(123) x = np.linspace(-5, 5, 100) y = np.linspace(-5, 5, 100) X, Y = np.meshgrid(x, y) Z = np.sin(np.sqrt(X ** 2 + Y ** 2))<\/code><\/li>\n\n\n\n<li>\u521b\u5efa3D\u66f2\u9762\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>plot_surface()<\/code>\u65b9\u6cd5\u6765\u521b\u5efa3D\u66f2\u9762\u56fe\u3002\u8fd9\u4e2a\u65b9\u6cd5\u53ef\u4ee5\u63a5\u53d7\u4e09\u4e2a\u6570\u7ec4\u4f5c\u4e3a\u53c2\u6570\uff0c\u7528\u4e8e\u6307\u5b9a\u6bcf\u4e2a\u6570\u636e\u70b9\u7684x\u3001y\u3001z\u5750\u6807\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a3D\u66f2\u9762\u56fe\uff0c\u5e76\u663e\u793a\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\uff1apythonCopy code<code>fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.plot_surface(X, Y, Z) ax.set_xlabel('X Label') ax.set_ylabel('Y Label') ax.set_zlabel('Z Label') plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\u76843D\u66f2\u9762\u56fe\uff0c\u5e76\u4e3a\u5b83\u4eec\u6dfb\u52a0x\u3001y\u3001z\u5750\u6807\u8f74\u6807\u7b7e\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e493D\u66f2\u9762\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u5404\u79cd\u65b9\u6cd5\u548c\u5c5e\u6027\u6765\u81ea\u5b9a\u4e493D\u66f2\u9762\u56fe\uff0c\u4f8b\u5982\u8c03\u6574\u66f2\u9762\u56fe\u7684\u989c\u8272\u3001\u900f\u660e\u5ea6\u548c\u9634\u5f71\uff0c\u6dfb\u52a0\u5750\u6807\u8f74\u6807\u7b7e\u548c\u6807\u9898\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u81ea\u5b9a\u4e49\u4e00\u4e2a3D\u66f2\u9762\u56fe\uff0c\u5e76\u5c06\u5b83\u7684\u989c\u8272\u548c\u900f\u660e\u5ea6\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff1apythonCopy code<code>fig = plt.figure() ax = fig.add_subplot(111, projection='3d') c = np.random.randint(0, 10, size=10000) alpha = np.random.uniform(0.5, 1, size=10000) ax.plot_surface(X, Y, Z, color=c, alpha=alpha) ax.set_xlabel('X Label') ax.set_ylabel('Y Label') ax.set_zlabel('Z Label') ax.set_title('3D Surface Plot') plt.show() <\/code>\u8fd9<\/li>\n<\/ol>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u5c06\u521b\u5efa\u4e00\u4e2a\u5305\u542b\u968f\u673a\u751f\u6210\u7684\u6570\u636e\u70b9\u76843D\u66f2\u9762\u56fe\uff0c\u5e76\u5c06\u5b83\u4eec\u7684\u989c\u8272\u548c\u900f\u660e\u5ea6\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff0c\u5e76\u6dfb\u52a0\u4e86x\u3001y\u3001z\u5750\u6807\u8f74\u6807\u7b7e\u548c\u6807\u9898\u3002<\/p>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u521b\u5efa3D\u66f2\u9762\u56fe\u9700\u8981\u5bf9\u6570\u636e\u70b9\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u5e76\u5bf9\u6570\u636e\u7684\u683c\u5f0f\u548c\u7c7b\u578b\u6709\u4e00\u5b9a\u7684\u638c\u63e1\u3002\u53e6\u5916\uff0cMatplotlib\u8fd8\u63d0\u4f9b\u4e86\u5176\u4ed6\u7c7b\u578b\u76843D\u56fe\u8868\uff0c\u4f8b\u59823D\u6563\u70b9\u56fe\u30013D\u67f1\u72b6\u56fe\u548c3D\u6761\u5f62\u56fe\u7b49\uff0c\u53ef\u4ee5\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9\u4e0d\u540c\u7684\u56fe\u8868\u7c7b\u578b\u6765\u5c55\u793a\u548c\u5206\u6790\u6570\u636e\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u76843D\u56fe\u8868\u7684\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u521b\u5efa\u52a8\u753b<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>FuncAnimation<\/code>\u51fd\u6570\u521b\u5efa\u52a8\u753b\uff0c\u8be5\u51fd\u6570\u63a5\u53d7\u4e00\u4e2a\u6216\u591a\u4e2a\u51fd\u6570\u548c\u5176\u4ed6\u53c2\u6570\u4f5c\u4e3a\u8f93\u5165\uff0c\u5e76\u751f\u6210\u4e00\u4e2a\u6307\u5b9a\u65f6\u95f4\u8303\u56f4\u5185\u7684\u52a8\u753b\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u521b\u5efa\u52a8\u753b\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u5165\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u5bfc\u5165<code>animation<\/code>\u6a21\u5757\u3001<code>pyplot<\/code>\u6a21\u5757\u548c\u5176\u4ed6\u5fc5\u8981\u7684\u5e93\u548c\u6a21\u5757\uff0c\u6765\u521b\u5efa\u52a8\u753b\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u5bfc\u5165\u9700\u8981\u7684\u5e93\u548c\u6a21\u5757\uff1apythonCopy code<code>import matplotlib.pyplot as plt from matplotlib.animation import FuncAnimation import numpy as np<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u6570\u636e\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u521b\u5efa\u4e00\u4e9b\u6570\u636e\uff0c\u7528\u4e8e\u8868\u793a\u8981\u5728\u52a8\u753b\u4e2d\u7ed8\u5236\u7684\u56fe\u5f62\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e9b\u968f\u673a\u7684\u6570\u636e\uff1apythonCopy code<code>np.random.seed(123) x = np.linspace(0, 2 * np.pi, 100) y = np.sin(x)<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u52a8\u753b\u51fd\u6570\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u52a8\u753b\u51fd\u6570\uff0c\u8be5\u51fd\u6570\u5c06\u63a5\u53d7\u4e00\u4e2a\u65f6\u95f4\u53c2\u6570\u548c\u5176\u4ed6\u5fc5\u8981\u53c2\u6570\uff0c\u5e76\u8fd4\u56de\u8981\u5728\u52a8\u753b\u4e2d\u7ed8\u5236\u7684\u56fe\u5f62\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u52a8\u753b\u51fd\u6570\uff0c\u8be5\u51fd\u6570\u5c06\u5728\u6bcf\u4e2a\u65f6\u95f4\u6b65\u957f\u4e2d\u5411y\u503c\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u968f\u673a\u503c\uff0c\u5e76\u7ed8\u5236\u65b0\u7684\u56fe\u5f62\uff1apythonCopy code<code>def update(frame): y = np.sin(x) + np.random.normal(0, 0.1, size=len(x)) line.set_ydata(y) return line,<\/code><\/li>\n\n\n\n<li>\u521b\u5efa\u52a8\u753b\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>FuncAnimation<\/code>\u51fd\u6570\u6765\u521b\u5efa\u52a8\u753b\u3002\u8fd9\u4e2a\u51fd\u6570\u53ef\u4ee5\u63a5\u53d7\u591a\u4e2a\u53c2\u6570\uff0c\u5305\u62ec\u56fe\u5f62\u5bf9\u8c61\u3001\u52a8\u753b\u51fd\u6570\u3001\u65f6\u95f4\u8303\u56f4\u3001\u65f6\u95f4\u6b65\u957f\u548c\u5176\u4ed6\u5fc5\u8981\u53c2\u6570\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u52a8\u753b\uff0c\u5e76\u4f7f\u7528<code>FuncAnimation<\/code>\u51fd\u6570\u5c06\u5176\u8fde\u63a5\u5230\u52a8\u753b\u51fd\u6570\uff1apythonCopy code<code>fig, ax = plt.subplots() line, = ax.plot(x, y) ani = FuncAnimation(fig, update, frames=np.linspace(0, 2*np.pi, 100), interval=50) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u52a8\u753b\uff0c\u8be5\u52a8\u753b\u5c06\u5728\u6bcf\u4e2a\u65f6\u95f4\u6b65\u957f\u4e2d\u5411y\u503c\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u968f\u673a\u503c\uff0c\u5e76\u7ed8\u5236\u65b0\u7684\u56fe\u5f62\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u52a8\u753b\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u5404\u79cd\u65b9\u6cd5\u548c\u5c5e\u6027\u6765\u81ea\u5b9a\u4e49\u52a8\u753b\uff0c\u4f8b\u5982\u8c03\u6574\u56fe\u5f62\u7684\u989c\u8272\u3001\u7ebf\u578b\u548c\u6807\u7b7e\uff0c\u6dfb\u52a0\u5750\u6807\u8f74\u6807\u7b7e\u548c\u6807\u9898\uff0c\u8c03\u6574\u52a8\u753b\u901f\u5ea6\u548c\u5faa\u73af\u7b49\u7b49\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u81ea\u5b9a\u4e49\u4e00\u4e2a\u52a8\u753b\uff0c\u5e76\u5c06\u5176\u7ebf\u6761\u989c\u8272\u548c\u6807\u7b7e\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff1apythonCopy code<code>fig, ax = plt.subplots() line, = ax.plot(x, y, color='blue', label='sin(x)') def update(frame): y = np.sin(x + frame \/ 10.0) + np.random.normal(0, 0.1, size=len(x)) line.set_ydata(y) line.set_color(np.random.rand(3)) line.set_label('sin(x+t)') return line, ani = FuncAnimation(fig, update,<\/code><\/li>\n<\/ol>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>frames=np.linspace(0, 2*np.pi, 100), interval=50)<\/p>\n\n\n\n<p>ax.set_xlabel(&#8216;X Label&#8217;) ax.set_ylabel(&#8216;Y Label&#8217;) ax.set_title(&#8216;Animation Demo&#8217;) ax.legend()<\/p>\n\n\n\n<p>plt.show()<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>\n\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u81ea\u5b9a\u4e49\u7684\u52a8\u753b\uff0c\u8be5\u52a8\u753b\u5c06\u5728\u6bcf\u4e2a\u65f6\u95f4\u6b65\u957f\u4e2d\u5411y\u503c\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u968f\u673a\u503c\uff0c\u5e76\u5c06\u7ebf\u6761\u989c\u8272\u548c\u6807\u7b7e\u8c03\u6574\u4e3a\u968f\u673a\u503c\uff0c\u5e76\u6dfb\u52a0\u4e86x\u3001y\u3001\u6807\u9898\u548c\u6807\u7b7e\u3002\n\n\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u521b\u5efa\u52a8\u753b\u9700\u8981\u5bf9\u6570\u636e\u70b9\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u5e76\u5bf9\u6570\u636e\u7684\u683c\u5f0f\u548c\u7c7b\u578b\u6709\u4e00\u5b9a\u7684\u638c\u63e1\u3002\u53e6\u5916\uff0cMatplotlib\u8fd8\u63d0\u4f9b\u4e86\u5176\u4ed6\u7c7b\u578b\u7684\u52a8\u753b\uff0c\u4f8b\u5982\u4f7f\u7528blit\u52a0\u901f\u52a8\u753b\uff0c\u6216\u8005\u5728\u56fe\u5f62\u4e2d\u6dfb\u52a0\u6ed1\u5757\u63a7\u5236\u52a8\u753b\u7684\u65f6\u95f4\u7b49\u7b49\uff0c\u53ef\u4ee5\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9\u4e0d\u540c\u7684\u52a8\u753b\u7c7b\u578b\u6765\u5c55\u793a\u548c\u5206\u6790\u6570\u636e\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u52a8\u753b\u6307\u5357\u3002\n<\/code><\/pre>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u66f4\u65b0\u56fe\u5f62<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u5404\u79cd\u65b9\u6cd5\u548c\u5c5e\u6027\u6765\u66f4\u65b0\u56fe\u5f62\uff0c\u4f8b\u5982\u66f4\u65b0\u66f2\u7ebf\u3001\u6563\u70b9\u56fe\u3001\u67f1\u72b6\u56fe\u3001\u997c\u56fe\u548c\u56fe\u8868\u7b49\u7b49\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u66f4\u65b0\u56fe\u5f62\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u66f4\u65b0\u66f2\u7ebf\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_data()<\/code>\u65b9\u6cd5\u6765\u66f4\u65b0\u66f2\u7ebf\u7684x\u548cy\u6570\u636e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u66f4\u65b0\u4e00\u4e2a\u5df2\u6709\u7684\u66f2\u7ebf\uff0c\u5e76\u5c06\u5176y\u503c\u52a0\u500d\uff1apythonCopy code<code>x = np.linspace(0, 2*np.pi, 100) y = np.sin(x) fig, ax = plt.subplots() line, = ax.plot(x, y) y_new = 2 * y line.set_data(x, y_new) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u6b63\u5f26\u66f2\u7ebf\uff0c\u5e76\u5c06\u5176y\u503c\u52a0\u500d\u3002<\/li>\n\n\n\n<li>\u66f4\u65b0\u6563\u70b9\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_offsets()<\/code>\u65b9\u6cd5\u6765\u66f4\u65b0\u6563\u70b9\u56fe\u7684x\u548cy\u6570\u636e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u66f4\u65b0\u4e00\u4e2a\u5df2\u6709\u7684\u6563\u70b9\u56fe\uff0c\u5e76\u5c06\u5176x\u548cy\u503c\u52a0\u500d\uff1apythonCopy code<code>x = np.random.rand(100) y = np.random.rand(100) fig, ax = plt.subplots() scat = ax.scatter(x, y) x_new = 2 * x y_new = 2 * y scat.set_offsets(np.c_[x_new, y_new]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u5c06\u5176x\u548cy\u503c\u52a0\u500d\u3002<\/li>\n\n\n\n<li>\u66f4\u65b0\u67f1\u72b6\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_height()<\/code>\u65b9\u6cd5\u6765\u66f4\u65b0\u67f1\u72b6\u56fe\u7684\u9ad8\u5ea6\u6570\u636e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u66f4\u65b0\u4e00\u4e2a\u5df2\u6709\u7684\u67f1\u72b6\u56fe\uff0c\u5e76\u5c06\u5176\u9ad8\u5ea6\u503c\u52a0\u500d\uff1apythonCopy code<code>x = ['A', 'B', 'C', 'D'] y = [1, 2, 3, 4] fig, ax = plt.subplots() bars = ax.bar(x, y) y_new = [2 * i for i in y] for bar, height in zip(bars, y_new): bar.set_height(height) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u67f1\u72b6\u56fe\uff0c\u5e76\u5c06\u5176\u9ad8\u5ea6\u503c\u52a0\u500d\u3002<\/li>\n\n\n\n<li>\u66f4\u65b0\u997c\u56fe\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_sizes()<\/code>\u65b9\u6cd5\u6765\u66f4\u65b0\u997c\u56fe\u7684\u5927\u5c0f\u6570\u636e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u66f4\u65b0\u4e00\u4e2a\u5df2\u6709\u7684\u997c\u56fe\uff0c\u5e76\u5c06\u5176\u5927\u5c0f\u503c\u52a0\u500d\uff1apythonCopy code<code>sizes = [15, 30, 45, 10] fig, ax = plt.subplots() wedges, labels, _ = ax.pie(sizes) sizes_new = [2 * size for size in sizes] for wedge, size in zip(wedges, sizes_new): wedge.set_sizes([size]) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u997c\u56fe\uff0c\u5e76\u5c06\u5176\u5927\u5c0f\u503c\u52a0\u500d\u3002<\/li>\n\n\n\n<li>\u66f4\u65b0\u56fe\u8868\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>set_data()<\/code>\u65b9\u6cd5\u6765\u66f4\u65b0\u56fe\u8868\u7684\u6570\u636e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u66f4\u65b0\u4e00\u4e2a\u5df2\u6709\u7684\u56fe\u8868\uff0c\u5e76\u5c06\u5176x\u548cy\u503c\u52a0\u500d\uff1apythonCopy code<code>x = np.linspace(0, 2*np.pi, 100) y = np.sin(x) fig, ax =<\/code><\/li>\n<\/ol>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>plt.subplots() ax.plot(x, y)<\/p>\n\n\n\n<p>x_new = 2 * x y_new = 2 * y ax.lines[0].set_data(x_new, y_new)<\/p>\n\n\n\n<p>plt.show()<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>\n\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u56fe\u8868\uff0c\u5e76\u5c06\u5176x\u548cy\u503c\u52a0\u500d\u3002\n\n\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u66f4\u65b0\u56fe\u5f62\u9700\u8981\u5bf9\u6570\u636e\u70b9\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u5e76\u5bf9\u6570\u636e\u7684\u683c\u5f0f\u548c\u7c7b\u578b\u6709\u4e00\u5b9a\u7684\u638c\u63e1\u3002\u53e6\u5916\uff0cMatplotlib\u8fd8\u63d0\u4f9b\u4e86\u5176\u4ed6\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u4f8b\u5982\u7b49\u9ad8\u7ebf\u56fe\u3001\u6781\u5750\u6807\u56fe\u548c\u5730\u56fe\u7b49\u7b49\uff0c\u53ef\u4ee5\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9\u4e0d\u540c\u7684\u56fe\u5f62\u7c7b\u578b\u6765\u5c55\u793a\u548c\u5206\u6790\u6570\u636e\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u56fe\u5f62\u66f4\u65b0\u6307\u5357\u3002\n<\/code><\/pre>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4fdd\u5b58\u52a8\u753b<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>Animation.save()<\/code>\u65b9\u6cd5\u6765\u4fdd\u5b58\u52a8\u753b\u3002\u8be5\u65b9\u6cd5\u9700\u8981\u6307\u5b9a\u4e00\u4e2a\u6587\u4ef6\u540d\u548c\u4e00\u4e9b\u5176\u4ed6\u53c2\u6570\uff0c\u4f8b\u5982\u5e27\u901f\u7387\u3001\u7f16\u89e3\u7801\u5668\u3001\u6bd4\u7279\u7387\u548c\u5206\u8fa8\u7387\u7b49\u7b49\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u4fdd\u5b58\u52a8\u753b\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4fdd\u5b58\u4e3aGIF\u683c\u5f0f\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>animation.PillowWriter<\/code>\u7f16\u89e3\u7801\u5668\u5c06\u52a8\u753b\u4fdd\u5b58\u4e3aGIF\u683c\u5f0f\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4fdd\u5b58\u4e00\u4e2a\u52a8\u753b\uff0c\u5e76\u5c06\u5176\u4fdd\u5b58\u4e3a<code>my_animation.gif<\/code>\u6587\u4ef6\uff1apythonCopy code<code>fig, ax = plt.subplots() line, = ax.plot([], [], lw=2) def init(): line.set_data([], []) return line, def animate(i): x = np.linspace(0, 2*np.pi, 100) y = np.sin(2 * np.pi * (x - 0.01 * i)) line.set_data(x, y) return line, ani = animation.FuncAnimation(fig, animate, init_func=init, frames=100, interval=50, blit=True) writer = animation.PillowWriter(fps=30) ani.save('my_animation.gif', writer=writer) <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u52a8\u753b\uff0c\u5e76\u5c06\u5176\u4fdd\u5b58\u4e3a<code>my_animation.gif<\/code>\u6587\u4ef6\u3002<\/li>\n\n\n\n<li>\u4fdd\u5b58\u4e3aMP4\u683c\u5f0f\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>animation.FFMpegWriter<\/code>\u7f16\u89e3\u7801\u5668\u5c06\u52a8\u753b\u4fdd\u5b58\u4e3aMP4\u683c\u5f0f\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4fdd\u5b58\u4e00\u4e2a\u52a8\u753b\uff0c\u5e76\u5c06\u5176\u4fdd\u5b58\u4e3a<code>my_animation.mp4<\/code>\u6587\u4ef6\uff1apythonCopy code<code>fig, ax = plt.subplots() line, = ax.plot([], [], lw=2) def init(): line.set_data([], []) return line, def animate(i): x = np.linspace(0, 2*np.pi, 100) y = np.sin(2 * np.pi * (x - 0.01 * i)) line.set_data(x, y) return line, ani = animation.FuncAnimation(fig, animate, init_func=init, frames=100, interval=50, blit=True) writer = animation.FFMpegWriter(fps=30) ani.save('my_animation.mp4', writer=writer) <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u52a8\u753b\uff0c\u5e76\u5c06\u5176\u4fdd\u5b58\u4e3a<code>my_animation.mp4<\/code>\u6587\u4ef6\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u4fdd\u5b58\u52a8\u753b\u4e4b\u524d\uff0c\u4f60\u9700\u8981\u786e\u4fdd\u5df2\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86\u6240\u9700\u7684\u7f16\u89e3\u7801\u5668\u3002\u53e6\u5916\uff0c\u4fdd\u5b58\u52a8\u753b\u8fd8\u9700\u8981\u5bf9\u6587\u4ef6\u683c\u5f0f\u3001\u6587\u4ef6\u540d\u548c\u5176\u4ed6\u53c2\u6570\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u52a8\u753b\u4fdd\u5b58\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4ea4\u4e92\u5f0f\u7ed8\u56fe\u53ca\u4e8b\u4ef6\u5904\u7406<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u4ea4\u4e92\u5f0f\u7ed8\u56fe\u6765\u4f7f\u56fe\u5f62\u5177\u6709\u54cd\u5e94\u7528\u6237\u8f93\u5165\u7684\u80fd\u529b\uff0c\u4f8b\u5982\u9f20\u6807\u5355\u51fb\u3001\u9f20\u6807\u79fb\u52a8\u3001\u952e\u76d8\u6309\u952e\u7b49\u7b49\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u4ea4\u4e92\u5f0f\u7ed8\u56fe\u548c\u4e8b\u4ef6\u5904\u7406\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u9f20\u6807\u5355\u51fb\u4e8b\u4ef6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>Figure.canvas.mpl_connect()<\/code>\u65b9\u6cd5\u6765\u6ce8\u518c\u9f20\u6807\u5355\u51fb\u4e8b\u4ef6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u6ce8\u518c\u4e00\u4e2a\u9f20\u6807\u5355\u51fb\u4e8b\u4ef6\uff0c\u5f53\u9f20\u6807\u5355\u51fb\u65f6\uff0c\u5c06\u6253\u5370\u51fa\u9f20\u6807\u5355\u51fb\u7684\u4f4d\u7f6e\u548c\u6563\u70b9\u56fe\u4e2d\u8be5\u4f4d\u7f6e\u7684\u6570\u636e\u70b9\uff1apythonCopy code<code>x = np.random.rand(100) y = np.random.rand(100) fig, ax = plt.subplots() scat = ax.scatter(x, y) def on_click(event): if event.inaxes is not None: print('x = {}, y = {}'.format(event.xdata, event.ydata)) index = np.argmin((x - event.xdata)**2 + (y - event.ydata)**2) print('value = {}'.format(scat.get_offsets()[index])) fig.canvas.mpl_connect('button_press_event', on_click) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u6ce8\u518c\u4e00\u4e2a\u9f20\u6807\u5355\u51fb\u4e8b\u4ef6\uff0c\u5f53\u9f20\u6807\u5355\u51fb\u65f6\uff0c\u5c06\u6253\u5370\u51fa\u9f20\u6807\u5355\u51fb\u7684\u4f4d\u7f6e\u548c\u6563\u70b9\u56fe\u4e2d\u8be5\u4f4d\u7f6e\u7684\u6570\u636e\u70b9\u3002<\/li>\n\n\n\n<li>\u9f20\u6807\u79fb\u52a8\u4e8b\u4ef6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>Figure.canvas.mpl_connect()<\/code>\u65b9\u6cd5\u6765\u6ce8\u518c\u9f20\u6807\u79fb\u52a8\u4e8b\u4ef6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u6ce8\u518c\u4e00\u4e2a\u9f20\u6807\u79fb\u52a8\u4e8b\u4ef6\uff0c\u5f53\u9f20\u6807\u79fb\u52a8\u65f6\uff0c\u5c06\u9ad8\u4eae\u9f20\u6807\u6240\u5728\u7684\u6570\u636e\u70b9\uff1apythonCopy code<code>x = np.random.rand(100) y = np.random.rand(100) fig, ax = plt.subplots() scat = ax.scatter(x, y) def on_move(event): if event.inaxes is not None: index = np.argmin((x - event.xdata)**2 + (y - event.ydata)**2) offsets = scat.get_offsets() offsets[:, 2] = 0.3 offsets[index, 2] = 1 scat.set_offsets(offsets) fig.canvas.draw_idle() fig.canvas.mpl_connect('motion_notify_event', on_move) plt.show() <\/code>\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u6ce8\u518c\u4e00\u4e2a\u9f20\u6807\u79fb\u52a8\u4e8b\u4ef6\uff0c\u5f53\u9f20\u6807\u79fb\u52a8\u65f6\uff0c\u5c06\u9ad8\u4eae\u9f20\u6807\u6240\u5728\u7684\u6570\u636e\u70b9\u3002<\/li>\n\n\n\n<li>\u952e\u76d8\u6309\u952e\u4e8b\u4ef6\uff1a\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>Figure.canvas.mpl_connect()<\/code>\u65b9\u6cd5\u6765\u6ce8\u518c\u952e\u76d8\u6309\u952e\u4e8b\u4ef6\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u521b\u5efa\u4e00\u4e2a\u66f2\u7ebf\u56fe\uff0c\u5e76\u6ce8\u518c\u4e00\u4e2a\u952e\u76d8\u6309\u952e\u4e8b\u4ef6\uff0c\u5f53\u6309\u4e0b\u952e\u76d8\u4e0a\u7684\u5411\u4e0a\u7bad\u5934\u952e\u65f6\uff0c\u5c06\u5c06\u66f2\u7ebf\u4e0a\u5347\uff0c\u5e76\u91cd\u7ed8\u66f2\u7ebf\u56fe\uff1apythonCopy code<code>x = np.linspace(0, 2*np.pi, 100) y = np.sin(x) fig, ax = plt.subplots() line, = ax.plot(x, y) def on_key<\/code><\/li>\n<\/ol>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>(event): if event.key == &#8216;up&#8217;: y_new = y + 0.1 line.set_ydata(y_new) fig.canvas.draw_idle()<\/p>\n\n\n\n<p>fig.canvas.mpl_connect(&#8216;key_press_event&#8217;, on_key)<\/p>\n\n\n\n<p>plt.show()<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>\n\u8fd9\u5c06\u521b\u5efa\u4e00\u4e2a\u66f2\u7ebf\u56fe\uff0c\u5e76\u6ce8\u518c\u4e00\u4e2a\u952e\u76d8\u6309\u952e\u4e8b\u4ef6\uff0c\u5f53\u6309\u4e0b\u952e\u76d8\u4e0a\u7684\u5411\u4e0a\u7bad\u5934\u952e\u65f6\uff0c\u5c06\u5c06\u66f2\u7ebf\u4e0a\u5347\uff0c\u5e76\u91cd\u7ed8\u66f2\u7ebf\u56fe\u3002\n\n\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728Matplotlib\u4e2d\uff0c\u4ea4\u4e92\u5f0f\u7ed8\u56fe\u9700\u8981\u5bf9\u4e8b\u4ef6\u7684\u7c7b\u578b\u3001\u5750\u6807\u7cfb\u3001\u6570\u636e\u70b9\u548c\u7ed8\u56fe\u5bf9\u8c61\u7b49\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u624d\u80fd\u5bf9\u7528\u6237\u8f93\u5165\u505a\u51fa\u6b63\u786e\u7684\u54cd\u5e94\u3002\u53e6\u5916\uff0cMatplotlib\u8fd8\u63d0\u4f9b\u4e86\u5176\u4ed6\u7c7b\u578b\u7684\u4e8b\u4ef6\u548c\u4ea4\u4e92\u5f0f\u5de5\u5177\uff0c\u4f8b\u5982\u6ed1\u5757\u3001\u6309\u94ae\u3001\u6587\u672c\u6846\u548c\u83dc\u5355\u7b49\u7b49\uff0c\u53ef\u4ee5\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9\u4e0d\u540c\u7684\u5de5\u5177\u6765\u589e\u5f3a\u56fe\u5f62\u7684\u4ea4\u4e92\u6027\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u4ea4\u4e92\u5f0f\u7ed8\u56fe\u548c\u4e8b\u4ef6\u5904\u7406\u6307\u5357\u3002\n<\/code><\/pre>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4eceCSV\u6587\u4ef6\u5bfc\u5165\u6570\u636e<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>numpy<\/code>\u5e93\u4e2d\u7684<code>loadtxt()<\/code>\u51fd\u6570\u6216<code>pandas<\/code>\u5e93\u4e2d\u7684<code>read_csv()<\/code>\u51fd\u6570\u6765\u4eceCSV\u6587\u4ef6\u4e2d\u5bfc\u5165\u6570\u636e\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u4eceCSV\u6587\u4ef6\u5bfc\u5165\u6570\u636e\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4f7f\u7528<code>numpy.loadtxt()<\/code>\u51fd\u6570\uff1a<code>numpy<\/code>\u5e93\u63d0\u4f9b\u4e86\u4e00\u4e2a<code>loadtxt()<\/code>\u51fd\u6570\uff0c\u53ef\u4ee5\u4eceCSV\u6587\u4ef6\u4e2d\u5bfc\u5165\u6570\u636e\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ece<code>data.csv<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u4e24\u5217\u6570\u636e\uff0c\u5e76\u7ed8\u5236\u5b83\u4eec\u7684\u6563\u70b9\u56fe\uff1apythonCopy code<code>import numpy as np import matplotlib.pyplot as plt data = np.loadtxt('data.csv', delimiter=',', skiprows=1) x = data[:, 0] y = data[:, 1] fig, ax = plt.subplots() ax.scatter(x, y) plt.show() <\/code>\u8fd9\u5c06\u4ece<code>data.csv<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u4e24\u5217\u6570\u636e\uff0c\u5e76\u7ed8\u5236\u5b83\u4eec\u7684\u6563\u70b9\u56fe\u3002<\/li>\n\n\n\n<li>\u4f7f\u7528<code>pandas.read_csv()<\/code>\u51fd\u6570\uff1a<code>pandas<\/code>\u5e93\u63d0\u4f9b\u4e86\u4e00\u4e2a<code>read_csv()<\/code>\u51fd\u6570\uff0c\u53ef\u4ee5\u4eceCSV\u6587\u4ef6\u4e2d\u5bfc\u5165\u6570\u636e\uff0c\u5e76\u5c06\u5176\u8f6c\u6362\u4e3a<code>DataFrame<\/code>\u5bf9\u8c61\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ece<code>data.csv<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u4e24\u5217\u6570\u636e\uff0c\u5e76\u7ed8\u5236\u5b83\u4eec\u7684\u66f2\u7ebf\u56fe\uff1apythonCopy code<code>import pandas as pd import matplotlib.pyplot as plt data = pd.read_csv('data.csv') x = data['x'] y = data['y'] fig, ax = plt.subplots() ax.plot(x, y) plt.show() <\/code>\u8fd9\u5c06\u4ece<code>data.csv<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u4e24\u5217\u6570\u636e\uff0c\u5e76\u7ed8\u5236\u5b83\u4eec\u7684\u66f2\u7ebf\u56fe\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u4f7f\u7528<code>loadtxt()<\/code>\u51fd\u6570\u6216<code>read_csv()<\/code>\u51fd\u6570\u65f6\uff0c\u4f60\u9700\u8981\u4e86\u89e3CSV\u6587\u4ef6\u7684\u683c\u5f0f\u548c\u5185\u5bb9\uff0c\u4ee5\u4fbf\u6b63\u786e\u5730\u5bfc\u5165\u6570\u636e\u3002\u53e6\u5916\uff0c\u4f60\u8fd8\u9700\u8981\u5bf9\u6570\u636e\u7684\u683c\u5f0f\u548c\u7c7b\u578b\u6709\u4e00\u5b9a\u7684\u638c\u63e1\uff0c\u4ee5\u4fbf\u5c06\u5176\u6b63\u786e\u5730\u663e\u793a\u548c\u5206\u6790\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u6570\u636e\u5bfc\u5165\u548c\u683c\u5f0f\u5316\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u4eceExcel\u6587\u4ef6\u5bfc\u5165\u6570\u636e<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>pandas<\/code>\u5e93\u4e2d\u7684<code>read_excel()<\/code>\u51fd\u6570\u6765\u4eceExcel\u6587\u4ef6\u4e2d\u5bfc\u5165\u6570\u636e\u3002\u8be5\u51fd\u6570\u53ef\u4ee5\u5c06Excel\u6587\u4ef6\u4e2d\u7684\u6570\u636e\u8bfb\u53d6\u4e3a<code>DataFrame<\/code>\u5bf9\u8c61\uff0c\u65b9\u4fbf\u540e\u7eed\u7684\u6570\u636e\u5206\u6790\u548c\u7ed8\u56fe\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u4eceExcel\u6587\u4ef6\u5bfc\u5165\u6570\u636e\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u5165\u5355\u4e2a\u5de5\u4f5c\u8868\uff1a\u5982\u679c\u4f60\u7684Excel\u6587\u4ef6\u53ea\u5305\u542b\u4e00\u4e2a\u5de5\u4f5c\u8868\uff0c\u53ef\u4ee5\u4f7f\u7528<code>pandas.read_excel()<\/code>\u51fd\u6570\u5c06\u5176\u5bfc\u5165\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ece<code>data.xlsx<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u4e00\u4e2a\u540d\u4e3a<code>Sheet1<\/code>\u7684\u5de5\u4f5c\u8868\uff0c\u5e76\u7ed8\u5236\u5176\u6570\u636e\u7684\u6563\u70b9\u56fe\uff1apythonCopy code<code>import pandas as pd import matplotlib.pyplot as plt data = pd.read_excel('data.xlsx', sheet_name='Sheet1') x = data['x'] y = data['y'] fig, ax = plt.subplots() ax.scatter(x, y) plt.show() <\/code>\u8fd9\u5c06\u4ece<code>data.xlsx<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u4e00\u4e2a\u540d\u4e3a<code>Sheet1<\/code>\u7684\u5de5\u4f5c\u8868\uff0c\u5e76\u7ed8\u5236\u5176\u6570\u636e\u7684\u6563\u70b9\u56fe\u3002<\/li>\n\n\n\n<li>\u5bfc\u5165\u591a\u4e2a\u5de5\u4f5c\u8868\uff1a\u5982\u679c\u4f60\u7684Excel\u6587\u4ef6\u5305\u542b\u591a\u4e2a\u5de5\u4f5c\u8868\uff0c\u53ef\u4ee5\u4f7f\u7528<code>pandas.read_excel()<\/code>\u51fd\u6570\u5c06\u5b83\u4eec\u5bfc\u5165\u4e3a\u5b57\u5178\u5bf9\u8c61\uff0c\u5e76\u6839\u636e\u9700\u8981\u9009\u62e9\u76f8\u5e94\u7684\u5de5\u4f5c\u8868\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ece<code>data.xlsx<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u6240\u6709\u5de5\u4f5c\u8868\uff0c\u5e76\u7ed8\u5236\u5b83\u4eec\u7684\u6570\u636e\u7684\u6563\u70b9\u56fe\uff1apythonCopy code<code>import pandas as pd import matplotlib.pyplot as plt data_dict = pd.read_excel('data.xlsx', sheet_name=None) fig, axs = plt.subplots(nrows=len(data_dict), figsize=(6, 3*len(data_dict))) for i, (name, sheet) in enumerate(data_dict.items()): x = sheet['x'] y = sheet['y'] axs[i].scatter(x, y) axs[i].set_title(name) plt.show() <\/code>\u8fd9\u5c06\u4ece<code>data.xlsx<\/code>\u6587\u4ef6\u4e2d\u5bfc\u5165\u6240\u6709\u5de5\u4f5c\u8868\uff0c\u5e76\u7ed8\u5236\u5b83\u4eec\u7684\u6570\u636e\u7684\u6563\u70b9\u56fe\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u4f7f\u7528<code>read_excel()<\/code>\u51fd\u6570\u65f6\uff0c\u4f60\u9700\u8981\u786e\u4fdd\u5df2\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86\u6240\u9700\u7684Excel\u5e93\uff0c\u4f8b\u5982<code>openpyxl<\/code>\u3001<code>xlrd<\/code>\u6216<code>xlsxwriter<\/code>\u7b49\u7b49\u3002\u53e6\u5916\uff0c\u4f60\u8fd8\u9700\u8981\u5bf9Excel\u6587\u4ef6\u7684\u7ed3\u6784\u548c\u5185\u5bb9\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u4ee5\u4fbf\u6b63\u786e\u5730\u5bfc\u5165\u6570\u636e\u3002\u5728Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\uff0c\u4f60\u53ef\u4ee5\u627e\u5230\u66f4\u8be6\u7ec6\u7684\u6570\u636e\u5bfc\u5165\u548c\u683c\u5f0f\u5316\u6307\u5357\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5bfc\u51fa\u56fe\u5f62\u4e3a\u56fe\u7247<\/p>\n\n\n\n<p>\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>savefig()<\/code>\u51fd\u6570\u5c06\u7ed8\u5236\u597d\u7684\u56fe\u5f62\u5bfc\u51fa\u4e3a\u56fe\u7247\u6587\u4ef6\u3002\u8be5\u51fd\u6570\u652f\u6301\u591a\u79cd\u56fe\u7247\u683c\u5f0f\uff0c\u4f8b\u5982PNG\u3001JPG\u3001PDF\u3001SVG\u7b49\u7b49\u3002\u4e0b\u9762\u662f\u4e00\u4e9b\u5bfc\u51fa\u56fe\u5f62\u4e3a\u56fe\u7247\u7684\u65b9\u6cd5\u548c\u8bf4\u660e\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5bfc\u51fa\u4e3aPNG\u683c\u5f0f\uff1a\u5982\u679c\u4f60\u60f3\u5c06\u7ed8\u5236\u597d\u7684\u56fe\u5f62\u5bfc\u51fa\u4e3aPNG\u683c\u5f0f\u7684\u56fe\u7247\uff0c\u53ef\u4ee5\u4f7f\u7528<code>savefig()<\/code>\u51fd\u6570\uff0c\u5e76\u6307\u5b9a\u6587\u4ef6\u540d\u7684\u6269\u5c55\u540d\u4e3a<code>.png<\/code>\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u5c06\u5176\u5bfc\u51fa\u4e3a\u540d\u4e3a<code>scatter.png<\/code>\u7684PNG\u683c\u5f0f\u7684\u56fe\u7247\uff1apythonCopy code<code>import numpy as np import matplotlib.pyplot as plt x = np.random.rand(100) y = np.random.rand(100) fig, ax = plt.subplots() ax.scatter(x, y) fig.savefig('scatter.png') <\/code>\u8fd9\u5c06\u7ed8\u5236\u4e00\u4e2a\u6563\u70b9\u56fe\uff0c\u5e76\u5c06\u5176\u5bfc\u51fa\u4e3a\u540d\u4e3a<code>scatter.png<\/code>\u7684PNG\u683c\u5f0f\u7684\u56fe\u7247\u3002<\/li>\n\n\n\n<li>\u5bfc\u51fa\u4e3aPDF\u683c\u5f0f\uff1a\u5982\u679c\u4f60\u60f3\u5c06\u7ed8\u5236\u597d\u7684\u56fe\u5f62\u5bfc\u51fa\u4e3aPDF\u683c\u5f0f\u7684\u56fe\u7247\uff0c\u53ef\u4ee5\u4f7f\u7528<code>savefig()<\/code>\u51fd\u6570\uff0c\u5e76\u6307\u5b9a\u6587\u4ef6\u540d\u7684\u6269\u5c55\u540d\u4e3a<code>.pdf<\/code>\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u4e2a\u66f2\u7ebf\u56fe\uff0c\u5e76\u5c06\u5176\u5bfc\u51fa\u4e3a\u540d\u4e3a<code>line.pdf<\/code>\u7684PDF\u683c\u5f0f\u7684\u56fe\u7247\uff1apythonCopy code<code>import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 2*np.pi, 100) y = np.sin(x) fig, ax = plt.subplots() ax.plot(x, y) fig.savefig('line.pdf') <\/code>\u8fd9\u5c06\u7ed8\u5236\u4e00\u4e2a\u66f2\u7ebf\u56fe\uff0c\u5e76\u5c06\u5176\u5bfc\u51fa\u4e3a\u540d\u4e3a<code>line.pdf<\/code>\u7684PDF\u683c\u5f0f\u7684\u56fe\u7247\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u4f7f\u7528<code>savefig()<\/code>\u51fd\u6570\u65f6\uff0c\u4f60\u9700\u8981\u5bf9\u8f93\u51fa\u56fe\u7247\u7684\u683c\u5f0f\u3001\u5927\u5c0f\u3001\u5206\u8fa8\u7387\u7b49\u7b49\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u4ee5\u4fbf\u5f97\u5230\u6ee1\u8db3\u9700\u6c42\u7684\u8f93\u51fa\u7ed3\u679c\u3002\u53e6\u5916\uff0c\u5982\u679c\u4f60\u5728\u5bfc\u51fa\u56fe\u7247\u65f6\u9047\u5230\u4e86\u95ee\u9898\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u4f7f\u7528Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u4e2d\u63d0\u4f9b\u7684\u8c03\u8bd5\u65b9\u6cd5\u548c\u5de5\u5177\uff0c\u6765\u6392\u67e5\u548c\u89e3\u51b3\u95ee\u9898\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5b9e\u6218\u6848\u4f8b\u65f6\u95f4\u5e8f\u5217\u5206\u6790<\/p>\n\n\n\n<p>\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u662f\u6307\u5bf9\u65f6\u95f4\u5e8f\u5217\u6570\u636e\u8fdb\u884c\u5efa\u6a21\u3001\u9884\u6d4b\u548c\u5206\u6790\u7684\u4e00\u79cd\u65b9\u6cd5\u3002\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>pandas<\/code>\u5e93\u4e2d\u7684<code>read_csv()<\/code>\u51fd\u6570\u548c<code>datetime<\/code>\u6a21\u5757\u6765\u8bfb\u53d6\u548c\u5904\u7406\u65f6\u95f4\u5e8f\u5217\u6570\u636e\uff0c\u4f7f\u7528<code>matplotlib.dates<\/code>\u6a21\u5757\u548c<code>pyplot<\/code>\u6a21\u5757\u6765\u7ed8\u5236\u548c\u663e\u793a\u65f6\u95f4\u5e8f\u5217\u56fe\u5f62\uff0c\u4ee5\u53ca\u4f7f\u7528<code>statsmodels<\/code>\u5e93\u4e2d\u7684<code>ARIMA<\/code>\u6a21\u578b\u6765\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u548c\u9884\u6d4b\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684\u5b9e\u6218\u6848\u4f8b\uff0c\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528Matplotlib\u548c<code>ARIMA<\/code>\u6a21\u578b\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u8bfb\u53d6\u65f6\u95f4\u5e8f\u5217\u6570\u636e\uff1a\u9996\u5148\uff0c\u4f60\u9700\u8981\u4f7f\u7528<code>pandas<\/code>\u5e93\u4e2d\u7684<code>read_csv()<\/code>\u51fd\u6570\u8bfb\u53d6\u65f6\u95f4\u5e8f\u5217\u6570\u636e\uff0c\u5e76\u5c06\u65f6\u95f4\u5217\u8f6c\u6362\u4e3a<code>datetime<\/code>\u7c7b\u578b\u3002\u4f8b\u5982\uff0c\u5047\u8bbe\u4f60\u7684\u65f6\u95f4\u5e8f\u5217\u6570\u636e\u4fdd\u5b58\u5728<code>data.csv<\/code>\u6587\u4ef6\u4e2d\uff0c\u683c\u5f0f\u4e3a<code>YYYY-MM-DD, value<\/code>\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bfb\u53d6\u6570\u636e\uff0c\u5e76\u8f6c\u6362\u65f6\u95f4\u5217\uff1apythonCopy code<code>import pandas as pd data = pd.read_csv('data.csv', parse_dates=[0], index_col=[0]) <\/code>\u8fd9\u5c06\u8bfb\u53d6<code>data.csv<\/code>\u6587\u4ef6\u4e2d\u7684\u65f6\u95f4\u5e8f\u5217\u6570\u636e\uff0c\u5e76\u5c06\u65f6\u95f4\u5217\u8f6c\u6362\u4e3a<code>datetime<\/code>\u7c7b\u578b\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u65f6\u95f4\u5e8f\u5217\u56fe\u5f62\uff1a\u63a5\u4e0b\u6765\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>matplotlib.dates<\/code>\u6a21\u5757\u548c<code>pyplot<\/code>\u6a21\u5757\u6765\u7ed8\u5236\u65f6\u95f4\u5e8f\u5217\u56fe\u5f62\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u65f6\u95f4\u5e8f\u5217\u6570\u636e\u7684\u7ebf\u56fe\uff0c\u5e76\u6dfb\u52a0\u6807\u9898\u3001\u8f74\u6807\u7b7e\u548c\u56fe\u4f8b\uff1apythonCopy code<code>import matplotlib.pyplot as plt from matplotlib.dates import DateFormatter fig, ax = plt.subplots() ax.plot(data.index, data['value'], label='Value') ax.set_title('Time Series Analysis') ax.set_xlabel('Date') ax.set_ylabel('Value') ax.legend() date_format = DateFormatter('%Y-%m-%d') ax.xaxis.set_major_formatter(date_format) fig.autofmt_xdate() plt.show() <\/code>\u8fd9\u5c06\u7ed8\u5236\u65f6\u95f4\u5e8f\u5217\u6570\u636e\u7684\u7ebf\u56fe\uff0c\u5e76\u6dfb\u52a0\u6807\u9898\u3001\u8f74\u6807\u7b7e\u548c\u56fe\u4f8b\u3002\u6ce8\u610f\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>DateFormatter<\/code>\u548c<code>autofmt_xdate()<\/code>\u51fd\u6570\u6765\u8c03\u6574\u65f6\u95f4\u8f74\u7684\u663e\u793a\u683c\u5f0f\u548c\u95f4\u8ddd\u3002<\/li>\n\n\n\n<li>\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\uff1a\u6700\u540e\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>statsmodels<\/code>\u5e93\u4e2d\u7684<code>ARIMA<\/code>\u6a21\u578b\u6765\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u548c\u9884\u6d4b\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4f7f\u7528<code>ARIMA<\/code>\u6a21\u578b\u5bf9\u65f6\u95f4\u5e8f\u5217\u6570\u636e\u8fdb\u884c\u5efa\u6a21\uff0c\u5e76\u9884\u6d4b\u672a\u67657\u5929\u7684\u503c\uff1apythonCopy code<code>from statsmodels.tsa.arima.model import ARIMA model = ARIMA(data['value'], order=(1, 1, 1)) result = model.fit() forecast = result.forecast(steps=7) print(forecast) <\/code>\u8fd9\u5c06\u4f7f\u7528<code>ARIMA<\/code>\u6a21\u578b\u5bf9\u65f6\u95f4\u5e8f\u5217\u6570\u636e\u8fdb\u884c\u5efa\u6a21\uff0c\u5e76\u9884\u6d4b\u672a\u67657\u5929\u7684\u503c\u3002\u6ce8\u610f\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>(1, 1, 1)<\/code>\u4f5c\u4e3a\u6a21\u578b\u7684\u9636\u6570\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u8fdb\u884c\u8c03\u6574\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u662f\u4e00\u95e8\u590d\u6742\u7684<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u5b66\u79d1\uff0c\u9700\u8981\u5bf9\u65f6\u95f4\u5e8f\u5217\u7684\u7279\u6027\u3001\u8d8b\u52bf\u3001\u5b63\u8282\u6027\u7b49\u7b49\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u4ee5\u4fbf\u6b63\u786e\u5730\u5efa\u6a21\u3001\u9884\u6d4b\u548c\u5206\u6790\u3002\u5728\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u65f6\uff0c\u4f60\u53ef\u80fd\u8fd8\u9700\u8981\u4f7f\u7528\u5176\u4ed6\u7684\u5e93\u548c\u5de5\u5177\uff0c\u4f8b\u5982<code>numpy<\/code>\u3001<code>scipy<\/code>\u3001<code>pandas_datareader<\/code>\u7b49\u7b49\uff0c\u6765\u5904\u7406\u548c\u5206\u6790\u6570\u636e\u3002\u6b64\u5916\uff0c\u4f60\u8fd8\u9700\u8981\u5bf9\u7edf\u8ba1\u5b66\u548c\u6570\u5b66\u57fa\u7840\u6709\u4e00\u5b9a\u7684\u4e86\u89e3\uff0c\u4ee5\u4fbf\u7406\u89e3\u548c\u4f7f\u7528\u76f8\u5173\u7684\u6a21\u578b\u548c\u7b97\u6cd5\u3002<\/p>\n\n\n\n<p>\u603b\u7684\u6765\u8bf4\uff0c\u4f7f\u7528Matplotlib\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u9700\u8981\u4ee5\u4e0b\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u8bfb\u53d6\u65f6\u95f4\u5e8f\u5217\u6570\u636e\uff0c\u5c06\u65f6\u95f4\u5217\u8f6c\u6362\u4e3a<code>datetime<\/code>\u7c7b\u578b\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u65f6\u95f4\u5e8f\u5217\u56fe\u5f62\uff0c\u6dfb\u52a0\u6807\u9898\u3001\u8f74\u6807\u7b7e\u548c\u56fe\u4f8b\uff0c\u8c03\u6574\u65f6\u95f4\u8f74\u7684\u663e\u793a\u683c\u5f0f\u548c\u95f4\u8ddd\u3002<\/li>\n\n\n\n<li>\u4f7f\u7528<code>ARIMA<\/code>\u6a21\u578b\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u548c\u9884\u6d4b\uff0c\u8c03\u6574\u6a21\u578b\u7684\u9636\u6570\u548c\u53c2\u6570\uff0c\u8bc4\u4f30\u6a21\u578b\u7684\u62df\u5408\u6548\u679c\u548c\u9884\u6d4b\u7cbe\u5ea6\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u65f6\uff0c\u4f60\u9700\u8981\u5bf9\u6570\u636e\u7684\u6027\u8d28\u548c\u7279\u5f81\u8fdb\u884c\u4ed4\u7ec6\u7684\u5206\u6790\u548c\u5224\u65ad\uff0c\u4ee5\u4fbf\u9009\u62e9\u5408\u9002\u7684\u6a21\u578b\u548c\u7b97\u6cd5\uff0c\u5e76\u6b63\u786e\u5730\u5e94\u7528\u5b83\u4eec\u3002\u540c\u65f6\uff0c\u4f60\u8fd8\u9700\u8981\u8fdb\u884c\u9002\u5f53\u7684\u6570\u636e\u5904\u7406\u548c\u6e05\u6d17\uff0c\u4ee5\u786e\u4fdd\u6570\u636e\u7684\u8d28\u91cf\u548c\u51c6\u786e\u6027\u3002\u5982\u679c\u4f60\u5728\u8fdb\u884c\u65f6\u95f4\u5e8f\u5217\u5206\u6790\u65f6\u9047\u5230\u4e86\u95ee\u9898\uff0c\u53ef\u4ee5\u53c2\u8003Matplotlib\u7684\u5b98\u65b9\u6587\u6863\u548c\u5176\u4ed6\u76f8\u5173\u8d44\u6e90\uff0c\u6216\u8005\u5411\u76f8\u5173\u9886\u57df\u7684\u4e13\u4e1a\u4eba\u58eb\u5bfb\u6c42\u5e2e\u52a9\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5b9e\u6218\u6848\u4f8b\u76f8\u5173\u6027\u5206\u6790<\/p>\n\n\n\n<p>\u76f8\u5173\u6027\u5206\u6790\u662f\u6307\u5bf9\u4e24\u4e2a\u6216\u591a\u4e2a\u53d8\u91cf\u4e4b\u95f4\u76f8\u5173\u5173\u7cfb\u7684\u5ea6\u91cf\u548c\u5206\u6790\u3002\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>pandas<\/code>\u5e93\u4e2d\u7684<code>read_csv()<\/code>\u51fd\u6570\u6765\u8bfb\u53d6\u6570\u636e\uff0c\u4f7f\u7528<code>numpy<\/code>\u5e93\u4e2d\u7684<code>corrcoef()<\/code>\u51fd\u6570\u548c<code>matplotlib<\/code>\u5e93\u4e2d\u7684<code>scatter()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u76f8\u5173\u6027\u5206\u6790\u56fe\u5f62\uff0c\u4ee5\u53ca\u4f7f\u7528<code>seaborn<\/code>\u5e93\u4e2d\u7684<code>heatmap()<\/code>\u51fd\u6570\u6765\u7ed8\u5236\u76f8\u5173\u6027\u70ed\u529b\u56fe\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684\u5b9e\u6218\u6848\u4f8b\uff0c\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528Matplotlib\u548c<code>seaborn<\/code>\u5e93\u8fdb\u884c\u76f8\u5173\u6027\u5206\u6790\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u8bfb\u53d6\u6570\u636e\uff1a\u9996\u5148\uff0c\u4f60\u9700\u8981\u4f7f\u7528<code>pandas<\/code>\u5e93\u4e2d\u7684<code>read_csv()<\/code>\u51fd\u6570\u8bfb\u53d6\u6570\u636e\u3002\u4f8b\u5982\uff0c\u5047\u8bbe\u4f60\u7684\u6570\u636e\u4fdd\u5b58\u5728<code>data.csv<\/code>\u6587\u4ef6\u4e2d\uff0c\u683c\u5f0f\u4e3a<code>x1, x2, y<\/code>\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8bfb\u53d6\u6570\u636e\uff1apythonCopy code<code>import pandas as pd data = pd.read_csv('data.csv') <\/code>\u8fd9\u5c06\u8bfb\u53d6<code>data.csv<\/code>\u6587\u4ef6\u4e2d\u7684\u6570\u636e\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u6563\u70b9\u56fe\uff1a\u63a5\u4e0b\u6765\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>numpy<\/code>\u5e93\u4e2d\u7684<code>corrcoef()<\/code>\u51fd\u6570\u8ba1\u7b97\u4e24\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u76f8\u5173\u7cfb\u6570\uff0c\u5e76\u4f7f\u7528<code>matplotlib<\/code>\u5e93\u4e2d\u7684<code>scatter()<\/code>\u51fd\u6570\u7ed8\u5236\u6563\u70b9\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e24\u4e2a\u53d8\u91cf\u7684\u6563\u70b9\u56fe\uff0c\u5e76\u6dfb\u52a0\u6807\u9898\u3001\u8f74\u6807\u7b7e\u548c\u56fe\u4f8b\uff1apythonCopy code<code>import numpy as np import matplotlib.pyplot as plt x1 = data['x1'] x2 = data['x2'] y = data['y'] corr = np.corrcoef(x1, x2)[0, 1] fig, ax = plt.subplots() ax.scatter(x1, x2, c=y) ax.set_title('Scatter Plot (Corr = {})'.format(corr)) ax.set_xlabel('X1') ax.set_ylabel('X2') fig.colorbar(ax.scatter(x1, x2, c=y), label='Y') plt.show() <\/code>\u8fd9\u5c06\u7ed8\u5236\u4e24\u4e2a\u53d8\u91cf\u7684\u6563\u70b9\u56fe\uff0c\u5e76\u6dfb\u52a0\u6807\u9898\u3001\u8f74\u6807\u7b7e\u548c\u56fe\u4f8b\u3002\u6ce8\u610f\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>corrcoef()<\/code>\u51fd\u6570\u8ba1\u7b97\u4e24\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u76f8\u5173\u7cfb\u6570\uff0c\u5e76\u5c06\u5176\u4f5c\u4e3a\u6807\u9898\u7684\u4e00\u90e8\u5206\u663e\u793a\u51fa\u6765\u3002\u53e6\u5916\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>scatter()<\/code>\u51fd\u6570\u7684<code>c<\/code>\u53c2\u6570\u6765\u6307\u5b9a\u989c\u8272\u53d8\u91cf\uff0c\u5e76\u4f7f\u7528<code>colorbar()<\/code>\u51fd\u6570\u6dfb\u52a0\u989c\u8272\u6761\u3002<\/li>\n\n\n\n<li>\u7ed8\u5236\u70ed\u529b\u56fe\uff1a\u5982\u679c\u4f60\u6709\u591a\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u76f8\u5173\u7cfb\u6570\u77e9\u9635\uff0c\u53ef\u4ee5\u4f7f\u7528<code>seaborn<\/code>\u5e93\u4e2d\u7684<code>heatmap()<\/code>\u51fd\u6570\u7ed8\u5236\u76f8\u5173\u6027\u70ed\u529b\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u8ba1\u7b97\u53d8\u91cf\u4e4b\u95f4\u7684\u76f8\u5173\u7cfb\u6570\u77e9\u9635\uff0c\u5e76\u7ed8\u5236\u76f8\u5173\u6027\u70ed\u529b\u56fe\uff1apythonCopy code<code>import seaborn as sns corr_matrix = data.corr() sns.heatmap(corr_matrix, annot=True) plt.show() <\/code>\u8fd9\u5c06\u8ba1\u7b97\u53d8\u91cf\u4e4b\u95f4\u7684\u76f8\u5173\u7cfb\u6570\u77e9\u9635\uff0c\u5e76\u7ed8\u5236\u76f8\u5173\u6027\u70ed\u529b\u56fe\u3002\u6ce8\u610f\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>annot=True<\/code>\u53c2\u6570\u6765\u663e\u793a\u76f8\u5173\u7cfb\u6570\u77e9\u9635\u7684\u6570\u503c\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u7ee7\u7eed<\/p>\n\n\n\n<p>\u7684\u662f\uff0c\u76f8\u5173\u6027\u5206\u6790\u5e76\u4e0d\u610f\u5473\u7740\u56e0\u679c\u5173\u7cfb\uff0c\u53ea\u662f\u6307\u53d8\u91cf\u4e4b\u95f4\u7684\u76f8\u5173\u7a0b\u5ea6\u3002\u56e0\u6b64\uff0c\u5728\u8fdb\u884c\u76f8\u5173\u6027\u5206\u6790\u65f6\uff0c\u4f60\u9700\u8981\u5bf9\u6570\u636e\u7684\u6027\u8d28\u548c\u7279\u5f81\u8fdb\u884c\u4ed4\u7ec6\u7684\u5206\u6790\u548c\u5224\u65ad\uff0c\u4ee5\u4fbf\u6b63\u786e\u5730\u89e3\u91ca\u548c\u5e94\u7528\u5206\u6790\u7ed3\u679c\u3002\u540c\u65f6\uff0c\u4f60\u8fd8\u9700\u8981\u8fdb\u884c\u9002\u5f53\u7684\u6570\u636e\u5904\u7406\u548c\u6e05\u6d17\uff0c\u4ee5\u786e\u4fdd\u6570\u636e\u7684\u8d28\u91cf\u548c\u51c6\u786e\u6027\u3002<\/p>\n\n\n\n<p>\u5982\u679c\u4f60\u5728\u8fdb\u884c\u76f8\u5173\u6027\u5206\u6790\u65f6\u9047\u5230\u4e86\u95ee\u9898\uff0c\u53ef\u4ee5\u53c2\u8003Matplotlib\u548c<code>seaborn<\/code>\u7684\u5b98\u65b9\u6587\u6863\u548c\u5176\u4ed6\u76f8\u5173\u8d44\u6e90\uff0c\u6216\u8005\u5411\u76f8\u5173\u9886\u57df\u7684\u4e13\u4e1a\u4eba\u58eb\u5bfb\u6c42\u5e2e\u52a9\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5b9e\u6218\u6848\u4f8b\u5730\u7406\u6570\u636e\u53ef\u89c6\u5316<\/p>\n\n\n\n<p>\u5730\u7406\u6570\u636e\u53ef\u89c6\u5316\u662f\u6307\u5c06\u5730\u7406\u4f4d\u7f6e\u548c\u76f8\u5173\u6570\u636e\u7ed3\u5408\u8d77\u6765\uff0c\u4ee5\u5730\u56fe\u7684\u5f62\u5f0f\u5c55\u793a\u51fa\u6765\u3002\u5728Matplotlib\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>Basemap<\/code>\u6a21\u5757\u548c<code>cartopy<\/code>\u6a21\u5757\u6765\u7ed8\u5236\u5730\u56fe\uff0c\u5e76\u4f7f\u7528<code>pyplot<\/code>\u6a21\u5757\u6765\u6dfb\u52a0\u6570\u636e\u70b9\u548c\u6807\u6ce8\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684\u5b9e\u6218\u6848\u4f8b\uff0c\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528Matplotlib\u548c<code>Basemap<\/code>\u6a21\u5757\u8fdb\u884c\u5730\u7406\u6570\u636e\u53ef\u89c6\u5316\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5b89\u88c5<code>Basemap<\/code>\u6a21\u5757\uff1a\u9996\u5148\uff0c\u4f60\u9700\u8981\u5b89\u88c5<code>Basemap<\/code>\u6a21\u5757\u3002\u53ef\u4ee5\u4f7f\u7528<code>conda<\/code>\u6216<code>pip<\/code>\u547d\u4ee4\u6765\u5b89\u88c5\uff0c\u4f8b\u5982\uff1abashCopy code<code>conda install -c anaconda basemap <\/code>\u6216\u8005bashCopy code<code>pip install basemap<\/code><\/li>\n\n\n\n<li>\u7ed8\u5236\u5730\u56fe\uff1a\u63a5\u4e0b\u6765\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>Basemap<\/code>\u6a21\u5757\u6765\u7ed8\u5236\u5730\u56fe\u3002\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u7ed8\u5236\u4e00\u4e2a\u5730\u56fe\uff0c\u663e\u793a\u4e2d\u56fd\u7684\u8fb9\u754c\u548c\u7701\u4efd\uff1apythonCopy code<code>from mpl_toolkits.basemap import Basemap import matplotlib.pyplot as plt m = Basemap(projection='merc', resolution='l', llcrnrlon=73, llcrnrlat=15, urcrnrlon=135, urcrnrlat=55) m.drawcoastlines() m.drawcountries() m.drawstates() plt.show() <\/code>\u8fd9\u5c06\u7ed8\u5236\u4e00\u4e2a\u5730\u56fe\uff0c\u663e\u793a\u4e2d\u56fd\u7684\u8fb9\u754c\u548c\u7701\u4efd\u3002\u6ce8\u610f\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>merc<\/code>\u6295\u5f71\u65b9\u5f0f\u548c<code>l<\/code>\u5206\u8fa8\u7387\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u8fdb\u884c\u8c03\u6574\u3002<\/li>\n\n\n\n<li>\u6dfb\u52a0\u6570\u636e\u70b9\u548c\u6807\u6ce8\uff1a\u6700\u540e\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528<code>pyplot<\/code>\u6a21\u5757\u6765\u6dfb\u52a0\u6570\u636e\u70b9\u548c\u6807\u6ce8\u3002\u4f8b\u5982\uff0c\u5047\u8bbe\u4f60\u6709\u4e00\u4e9b\u57ce\u5e02\u7684\u7ecf\u7eac\u5ea6\u548c\u4eba\u53e3\u6570\u636e\uff0c\u53ef\u4ee5\u4f7f\u7528<code>scatter()<\/code>\u51fd\u6570\u7ed8\u5236\u57ce\u5e02\u7684\u4f4d\u7f6e\u548c\u4eba\u53e3\u5927\u5c0f\uff0c\u5e76\u4f7f\u7528<code>annotate()<\/code>\u51fd\u6570\u6dfb\u52a0\u57ce\u5e02\u540d\u79f0\u548c\u4eba\u53e3\u6570\uff1apythonCopy code<code>import pandas as pd data = pd.read_csv('cities.csv') x, y = m(data['lon'].values, data['lat'].values) size = data['pop'].values \/ 1000 m.scatter(x, y, s=size, alpha=0.5, color='red') for i, row in data.iterrows(): plt.annotate(row['city'], xy=(x[i], y[i]), xytext=(5, 5), textcoords='offset points') plt.annotate(row['pop'], xy=(x[i], y[i]), xytext=(5, -10), textcoords='offset points', fontsize=8) plt.show() <\/code>\u8fd9\u5c06\u4f7f\u7528<code>scatter()<\/code>\u51fd\u6570\u7ed8\u5236\u57ce\u5e02\u7684\u4f4d\u7f6e\u548c\u4eba\u53e3\u5927\u5c0f\uff0c\u5e76\u4f7f\u7528<code>annotate()<\/code>\u51fd\u6570\u6dfb\u52a0\u57ce\u5e02\u540d\u79f0\u548c\u4eba\u53e3\u6570\u3002\u6ce8\u610f\uff0c\u8fd9\u91cc\u4f7f\u7528\u4e86<code>iterrows()<\/code>\u51fd\u6570\u904d\u5386\u6570\u636e\u884c\uff0c\u5e76\u4f7f\u7528<code>xy<\/code>\u53c2\u6570\u548c<code>xytext<\/code>\u53c2\u6570\u6765\u6307\u5b9a\u6ce8\u91ca\u7684\u4f4d\u7f6e\u548c\u504f\u79fb\u91cf\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u5728\u8fdb\u884c\u5730\u7406\u6570\u636e\u53ef\u89c6\u5316\u65f6\uff0c\u4f60\u9700\u8981\u9009\u62e9\u5408\u9002\u7684\u6295\u5f71\u65b9\u5f0f\u3001\u5206\u8fa8\u7387\u548c\u8fb9\u754c\u8303\u56f4\uff0c\u4ee5\u4fbf\u6b63\u786e\u5730\u663e\u793a\u5730\u56fe\u548c\u6570\u636e\u3002\u540c\u65f6\uff0c\u4f60\u8fd8\u9700\u8981\u6839\u636e\u6570\u636e\u7684\u6027<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caMatplotlib\u7684\u5c40\u9650\u6027<\/p>\n\n\n\n<p>\u867d\u7136Matplotlib\u662f\u4e00\u6b3e\u529f\u80fd\u5f3a\u5927\u4e14\u5e7f\u6cdb\u4f7f\u7528\u7684\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u4f46\u5b83\u4e5f\u6709\u4e00\u4e9b\u5c40\u9650\u6027\u3002\u4ee5\u4e0b\u662f\u4e00\u4e9bMatplotlib\u7684\u5c40\u9650\u6027\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7f3a\u4e4f\u4ea4\u4e92\u6027\uff1aMatplotlib\u7684\u56fe\u5f62\u662f\u9759\u6001\u7684\uff0c\u7f3a\u4e4f\u4ea4\u4e92\u6027\uff0c\u65e0\u6cd5\u5b9e\u73b0\u590d\u6742\u7684\u4ea4\u4e92\u64cd\u4f5c\u3002<\/li>\n\n\n\n<li>\u96be\u4ee5\u7ed8\u5236\u590d\u6742\u7684\u56fe\u5f62\uff1aMatplotlib\u867d\u7136\u80fd\u591f\u7ed8\u5236\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u4f46\u5bf9\u4e8e\u4e00\u4e9b\u590d\u6742\u7684\u56fe\u5f62\uff0c\u4f8b\u5982\u7f51\u7edc\u56fe\u3001\u6811\u5f62\u56fe\u7b49\uff0c\u9700\u8981\u4f7f\u7528\u5176\u4ed6\u5e93\u6216\u8005\u81ea\u5df1\u624b\u52a8\u5b9e\u73b0\u3002<\/li>\n\n\n\n<li>\u7f8e\u89c2\u5ea6\u6709\u5f85\u63d0\u9ad8\uff1aMatplotlib\u7684\u9ed8\u8ba4\u98ce\u683c\u8f83\u4e3a\u7b80\u5355\uff0c\u7f8e\u89c2\u5ea6\u8f83\u4f4e\uff0c\u9700\u8981\u624b\u52a8\u8c03\u6574\u989c\u8272\u3001\u7ebf\u578b\u3001\u5b57\u4f53\u7b49\u53c2\u6570\u624d\u80fd\u5f97\u5230\u7f8e\u89c2\u7684\u56fe\u5f62\u3002<\/li>\n\n\n\n<li>\u5bf9\u6d77\u91cf\u6570\u636e\u652f\u6301\u4e0d\u8db3\uff1a\u5f53\u6570\u636e\u91cf\u8f83\u5927\u65f6\uff0cMatplotlib\u7684\u7ed8\u56fe\u901f\u5ea6\u4f1a\u53d8\u6162\uff0c\u4e14\u4e0d\u652f\u6301\u5bf9\u6570\u636e\u8fdb\u884c\u5206\u5757\u7ed8\u5236\uff0c\u53ef\u80fd\u4f1a\u5bfc\u81f4\u5185\u5b58\u4e0d\u8db3\u7b49\u95ee\u9898\u3002<\/li>\n\n\n\n<li>\u5bf9\u4e8e3D\u53ef\u89c6\u5316\u652f\u6301\u4e0d\u591f\uff1a\u867d\u7136Matplotlib\u652f\u63013D\u53ef\u89c6\u5316\uff0c\u4f46\u5bf9\u4e8e\u590d\u6742\u76843D\u56fe\u5f62\uff0c\u6027\u80fd\u8f83\u5dee\uff0c\u7ed8\u5236\u901f\u5ea6\u6162\uff0c\u4e14\u9700\u8981\u7f16\u5199\u8f83\u591a\u7684\u4ee3\u7801\u3002<\/li>\n\n\n\n<li>\u5bf9\u4e8e\u6570\u636e\u5206\u6790\u652f\u6301\u4e0d\u591f\uff1aMatplotlib\u867d\u7136\u53ef\u4ee5\u7ed8\u5236\u5404\u79cd\u56fe\u5f62\uff0c\u4f46\u5e76\u6ca1\u6709\u5185\u7f6e\u7684\u6570\u636e\u5206\u6790\u529f\u80fd\uff0c\u4f8b\u5982\u6570\u636e\u805a\u5408\u3001\u7edf\u8ba1\u7b49\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u7684\u6765\u8bf4\uff0cMatplotlib\u662f\u4e00\u6b3e\u4f18\u79c0\u7684\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u4f46\u5728\u5e94\u7528\u8fc7\u7a0b\u4e2d\u9700\u8981\u6ce8\u610f\u5176\u5c40\u9650\u6027\uff0c\u540c\u65f6\u9700\u8981\u6839\u636e\u5177\u4f53\u7684\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u4ee5\u83b7\u5f97\u66f4\u597d\u7684\u6548\u679c\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u63a2\u7d22\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177<\/p>\n\n\n\n<p>\u9664\u4e86Matplotlib\u4e4b\u5916\uff0c\u8fd8\u6709\u5f88\u591a\u5176\u4ed6\u7684\u53ef\u89c6\u5316\u5de5\u5177\u53ef\u4ee5\u4f7f\u7528\u3002\u4ee5\u4e0b\u662f\u4e00\u4e9b\u5e38\u89c1\u7684\u53ef\u89c6\u5316\u5de5\u5177\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>Seaborn<\/code>\uff1aSeaborn\u662f\u57fa\u4e8eMatplotlib\u7684\u9ad8\u7ea7\u53ef\u89c6\u5316\u5e93\uff0c\u63d0\u4f9b\u4e86\u66f4\u591a\u7684\u56fe\u5f62\u7c7b\u578b\u548c\u6837\u5f0f\uff0c\u652f\u6301\u66f4\u590d\u6742\u7684\u7ed8\u56fe\u9700\u6c42\uff0c\u4e14\u53ef\u4ee5\u5f88\u597d\u5730\u4e0ePandas\u548cNumpy\u7b49\u6570\u636e\u5206\u6790\u5de5\u5177\u96c6\u6210\u3002<\/li>\n\n\n\n<li><code>Plotly<\/code>\uff1aPlotly\u662f\u4e00\u4e2a\u4ea4\u4e92\u6027\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u652f\u6301\u7ed8\u5236\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u5305\u62ec\u6563\u70b9\u56fe\u3001\u6298\u7ebf\u56fe\u3001\u70ed\u529b\u56fe\u30013D\u56fe\u5f62\u7b49\uff0c\u53ef\u4ee5\u901a\u8fc7\u7f51\u9875\u8fdb\u884c\u4ea4\u4e92\u5f0f\u64cd\u4f5c\uff0c\u652f\u6301Python\u3001R\u3001JavaScript\u7b49\u591a\u79cd\u7f16\u7a0b\u8bed\u8a00\u3002<\/li>\n\n\n\n<li><code>Bokeh<\/code>\uff1aBokeh\u662f\u4e00\u4e2a\u57fa\u4e8ePython\u7684\u4ea4\u4e92\u5f0f\u53ef\u89c6\u5316\u5e93\uff0c\u652f\u6301\u7ed8\u5236\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u5305\u62ec\u6563\u70b9\u56fe\u3001\u6298\u7ebf\u56fe\u3001\u70ed\u529b\u56fe\u30013D\u56fe\u5f62\u7b49\uff0c\u53ef\u4ee5\u901a\u8fc7\u7f51\u9875\u8fdb\u884c\u4ea4\u4e92\u5f0f\u64cd\u4f5c\uff0c\u652f\u6301Python\u3001R\u3001Scala\u7b49\u591a\u79cd\u7f16\u7a0b\u8bed\u8a00\u3002<\/li>\n\n\n\n<li><code>Altair<\/code>\uff1aAltair\u662f\u4e00\u4e2a\u57fa\u4e8ePython\u7684\u58f0\u660e\u5f0f\u53ef\u89c6\u5316\u5e93\uff0c\u652f\u6301\u7ed8\u5236\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u5305\u62ec\u6563\u70b9\u56fe\u3001\u6298\u7ebf\u56fe\u3001\u70ed\u529b\u56fe\u7b49\uff0c\u53ef\u4ee5\u901a\u8fc7Vega-Lite\u8bed\u6cd5\u8fdb\u884c\u914d\u7f6e\uff0c\u5177\u6709\u6613\u4e8e\u4f7f\u7528\u3001\u53ef\u8bfb\u6027\u5f3a\u7684\u7279\u70b9\u3002<\/li>\n\n\n\n<li><code>ggplot<\/code>\uff1aggplot\u662f\u4e00\u4e2a\u57fa\u4e8eR\u8bed\u8a00\u7684\u53ef\u89c6\u5316\u5e93\uff0c\u63d0\u4f9b\u4e86\u4e0eggplot2\u76f8\u4f3c\u7684\u8bed\u6cd5\u548c\u6837\u5f0f\uff0c\u652f\u6301\u7ed8\u5236\u5404\u79cd\u7c7b\u578b\u7684\u56fe\u5f62\uff0c\u5305\u62ec\u6563\u70b9\u56fe\u3001\u6298\u7ebf\u56fe\u3001\u67f1\u72b6\u56fe\u7b49\u3002<\/li>\n\n\n\n<li><code>D3.js<\/code>\uff1aD3.js\u662f\u4e00\u4e2a\u57fa\u4e8eJavaScript\u7684\u6570\u636e\u53ef\u89c6\u5316\u5e93\uff0c\u53ef\u4ee5\u521b\u5efa\u5404\u79cd\u7c7b\u578b\u7684\u4ea4\u4e92\u5f0f\u56fe\u5f62\u548c\u52a8\u753b\u6548\u679c\uff0c\u652f\u6301Web\u6807\u51c6\u548c\u73b0\u4ee3\u6d4f\u89c8\u5668\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u4e0d\u540c\u7684\u53ef\u89c6\u5316\u5de5\u5177\u5177\u6709\u4e0d\u540c\u7684\u7279\u70b9\u548c\u4f18\u7f3a\u70b9\uff0c\u9009\u62e9\u5408\u9002\u7684\u5de5\u5177\u9700\u8981\u8003\u8651\u5b9e\u9645\u9700\u6c42\u3001\u6570\u636e\u7c7b\u578b\u3001\u6570\u636e\u91cf\u7b49\u56e0\u7d20\u3002\u540c\u65f6\uff0c\u638c\u63e1\u591a\u79cd\u53ef\u89c6\u5316\u5de5\u5177\u53ef\u4ee5\u5e2e\u52a9\u4f60\u66f4\u597d\u5730\u5b8c\u6210\u6570\u636e\u5206\u6790\u548c\u53ef\u89c6\u5316\u4efb\u52a1\u3002<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=96&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u8d44\u6e90\u548c\u8fdb\u4e00\u6b65\u5b66\u4e60<\/p>\n\n\n\n<p>\u5982\u679c\u4f60\u60f3\u6df1\u5165\u5b66\u4e60Matplotlib\uff0c\u4ee5\u4e0b\u662f\u4e00\u4e9b\u5b66\u4e60\u8d44\u6e90\u548c\u5efa\u8bae\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5b98\u65b9\u6587\u6863\uff1aMatplotlib\u7684\u5b98\u65b9\u6587\u6863\u5305\u542b\u4e86\u8be6\u7ec6\u7684\u4f7f\u7528\u8bf4\u660e\u548c\u793a\u4f8b\u4ee3\u7801\uff0c\u53ef\u4ee5\u5e2e\u52a9\u4f60\u5feb\u901f\u5165\u95e8\u548c\u6df1\u5165\u5b66\u4e60\u3002<\/li>\n\n\n\n<li>\u7f51\u7edc\u6559\u7a0b\uff1a\u5728\u7f51\u4e0a\u53ef\u4ee5\u627e\u5230\u5f88\u591aMatplotlib\u7684\u6559\u7a0b\u548c\u793a\u4f8b\uff0c\u4f8b\u5982YouTube\u4e0a\u7684\u6559\u5b66\u89c6\u9891\u548cGitHub\u4e0a\u7684\u793a\u4f8b\u4ee3\u7801\uff0c\u53ef\u4ee5\u5e2e\u52a9\u4f60\u66f4\u597d\u5730\u7406\u89e3\u548c\u5e94\u7528Matplotlib\u3002<\/li>\n\n\n\n<li>\u4e66\u7c4d\uff1a\u6709\u5f88\u591a\u4f18\u79c0\u7684\u4e66\u7c4d\u53ef\u4ee5\u5e2e\u52a9\u4f60\u5b66\u4e60Matplotlib\u548c\u6570\u636e\u53ef\u89c6\u5316\uff0c\u4f8b\u5982\u300aPython\u6570\u636e\u53ef\u89c6\u5316\u6280\u672f\u5b9e\u6218\u300b\u548c\u300aPython\u6570\u636e\u5206\u6790\u4e0e\u6316\u6398\u5b9e\u6218\u300b\u7b49\u3002<\/li>\n\n\n\n<li>\u7ec3\u4e60\u9879\u76ee\uff1a\u5c1d\u8bd5\u5b8c\u6210\u4e00\u4e9b\u7ec3\u4e60\u9879\u76ee\uff0c\u4f8b\u5982\u7ed8\u5236\u4f60\u6240\u5728\u57ce\u5e02\u7684\u5929\u6c14\u6570\u636e\u3001\u7ed8\u5236\u80a1\u7968\u6570\u636e\u7b49\uff0c\u53ef\u4ee5\u5e2e\u52a9\u4f60\u5de9\u56fa\u6240\u5b66\u77e5\u8bc6\uff0c\u52a0\u6df1\u5bf9Matplotlib\u7684\u7406\u89e3\u3002<\/li>\n\n\n\n<li>\u5b66\u4e60\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\uff1aMatplotlib\u867d\u7136\u662f\u4e00\u6b3e\u529f\u80fd\u5f3a\u5927\u7684\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u4f46\u5728\u5b9e\u9645\u5e94\u7528\u4e2d\uff0c\u6709\u4e9b\u60c5\u51b5\u4e0b\u53ef\u80fd\u9700\u8981\u4f7f\u7528\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\u6765\u5b8c\u6210\u4efb\u52a1\u3002\u56e0\u6b64\uff0c\u5b66\u4e60\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u4f8b\u5982Seaborn\u3001Plotly\u548cBokeh\u7b49\uff0c\u53ef\u4ee5\u5e2e\u52a9\u4f60\u66f4\u597d\u5730\u5b8c\u6210\u6570\u636e\u53ef\u89c6\u5316\u4efb\u52a1\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5b66\u4e60Matplotlib\u9700\u8981\u6301\u7eed\u7684\u5b9e\u8df5\u548c\u5b66\u4e60\uff0c\u5efa\u8bae\u901a\u8fc7\u4e0d\u65ad\u7684\u7ec3\u4e60\u548c\u5b9e\u8df5\uff0c\u6df1\u5165\u7406\u89e3Matplotlib\u7684\u4f7f\u7528\u65b9\u6cd5\u548c\u7279\u70b9\uff0c\u540c\u65f6\u5b66\u4e60\u5176\u4ed6\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u4ee5\u4fbf\u66f4\u597d\u5730\u5e94\u5bf9\u5404\u79cd\u6570\u636e\u53ef\u89c6\u5316\u4efb\u52a1\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6211\u662f\u8981\u505aIT\u6559\u7a0b\u7684\u89c6\u9891\uff0c\u4f60\u80fd\u5426\u6839\u636e\u7f51\u7ad9\u7684 &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_mi_skip_tracking":false,"footnotes":""},"categories":[23],"tags":[],"class_list":["post-1861","post","type-post","status-publish","format-standard","hentry","category-material"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/1861","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1861"}],"version-history":[{"count":1,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/1861\/revisions"}],"predecessor-version":[{"id":1862,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/1861\/revisions\/1862"}],"wp:attachment":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1861"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1861"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1861"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}