在 Python 中创建 pivot_table 的图形
Create a graph of a pivot_table in Python
我创建了一个数据透视表 table 并且我想创建一个条形图。这是我的 pivot_table:
我不知道如何提取 1970 列的值并使用此信息制作条形图。
谢谢!!
您可以使用 plt.bar 并对数据帧进行切片:
df = pd.DataFrame([[1970,'a',1],
[1970,'b',2],
[1971,'a',2],
[1971,'b',3]],
columns=['year','location', 'value'])
df = pd.pivot_table(df, values='value', index='location', columns='year')
plt.bar(list(df.transpose().columns), height=df[1970])
只需将数据框列名称转换为 str
,然后您就可以 select 1970
年的数据与 df['1970']
。然后,您可以使用 pandas
built-in plot.bar
方法制作条形图。试试这个:
import pandas as pd
import matplotlib.pyplot as plt
#converting column names to string
df.columns = df.columns.astype(str)
#plotting a bar plot
df['1970'].plot.bar()
plt.show()
基于@AlanDyke DataFrame 的例子:
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame([[1970,'a',1],
[1970,'b',2],
[1971,'a',2],
[1971,'b',3]],
columns=['year','location', 'value'])
df = pd.pivot_table(df, values='value', index='location', columns='year')
df.columns = df.columns.astype(str)
df['1970'].plot.bar()
plt.show()
我创建了一个数据透视表 table 并且我想创建一个条形图。这是我的 pivot_table:
我不知道如何提取 1970 列的值并使用此信息制作条形图。
谢谢!!
您可以使用 plt.bar 并对数据帧进行切片:
df = pd.DataFrame([[1970,'a',1],
[1970,'b',2],
[1971,'a',2],
[1971,'b',3]],
columns=['year','location', 'value'])
df = pd.pivot_table(df, values='value', index='location', columns='year')
plt.bar(list(df.transpose().columns), height=df[1970])
只需将数据框列名称转换为 str
,然后您就可以 select 1970
年的数据与 df['1970']
。然后,您可以使用 pandas
built-in plot.bar
方法制作条形图。试试这个:
import pandas as pd
import matplotlib.pyplot as plt
#converting column names to string
df.columns = df.columns.astype(str)
#plotting a bar plot
df['1970'].plot.bar()
plt.show()
基于@AlanDyke DataFrame 的例子:
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame([[1970,'a',1],
[1970,'b',2],
[1971,'a',2],
[1971,'b',3]],
columns=['year','location', 'value'])
df = pd.pivot_table(df, values='value', index='location', columns='year')
df.columns = df.columns.astype(str)
df['1970'].plot.bar()
plt.show()