我第一次嘗試繪制圖表并嘗試撰寫一些代碼,您可以在其中輸入要繪制的引數,然后將其繪制為餅圖。但是當我嘗試運行它時,它會回傳一堆錯誤
import pandas as pd
import matplotlib
plot = input()
plot = str(plot)
df = pd.DataFrame({'Perimeter': [8, 16, 20],
'Area': [2, 16, 25]},
index=['Square 1', 'Square 2', 'Square 3'])
plot = df.plot.pie(y={plot}, figsize=(5, 5))
錯誤是:
C:\Users\KIAN\PycharmProjects\pythonProject\k.py:12: FutureWarning: 不推薦將集合作為索引器傳遞,并將在未來版本中提出。請改用串列。plot = df.plot.pie(y={plot}, figsize=(5, 5))
回溯(最近一次通話最后):
檔案“C:\Users\KIAN\PycharmProjects\pythonProject\k.py”,第 12 行,在 plot = df.plot.pie(y={plot}, figsize=(5, 5))
檔案“C:\Users\KIAN\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\plotting_core.py”,第 1613 行,在餅圖中回傳 self(kind="pie", **kwargs)
檔案“C:\Users\KIAN\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\plotting_core.py”,第 960 行,呼叫 data.index.name = y
檔案“C:\Users\KIAN\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\indexes\base.py”,第 1751 行,名稱可能為 may_extract_name(value, None, type(self))
檔案“C:\Users\KIAN\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\indexes\base.py”,第 7421 行, maybe_extract_name raise TypeError(f"{cls.name }.name must是一個可散列的型別”)
TypeError:Index.name 必須是可散列型別
知道如何解決這些問題或導致它們的原因嗎?
uj5u.com熱心網友回復:
該變數plot不應該在一個集合中,您甚至不需要將它分配給 a str,input即使您輸入數字也已經是字串:
plot = input()
df = pd.DataFrame({'Perimeter': [8, 16, 20],
'Area': [2, 16, 25]},
index=['Square 1', 'Square 2', 'Square 3'])
plot = df.plot.pie(y=plot, figsize=(5, 5))
輸出Area:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/512063.html
上一篇:當給定區間中的值數時,如何繪制直方圖?(Python)
下一篇:如何創建帶有堆疊和標記線段的圖
