Python 数据帧错误模块的条形图';numpy';没有属性';安排';

Python 数据帧错误模块的条形图';numpy';没有属性';安排';,python,pandas,numpy,plot,Python,Pandas,Numpy,Plot,我试图从数据框中绘制条形图。如果我执行numpy排列,我会看到错误模块“numpy”没有属性“arrange”。如果我没有安排,我看不到任何错误,但图表打开,但我看不到任何条形图。 这是我的密码: data = [] for x in tracks: data.append({'Track_Name':x.title,'plays':str(x.playback_count)}) df = pd.DataFrame(data) df1 = df[['Track_Name']] df2

我试图从数据框中绘制条形图。如果我执行numpy排列,我会看到错误
模块“numpy”没有属性“arrange”
。如果我没有安排,我看不到任何错误,但图表打开,但我看不到任何条形图。 这是我的密码:

data = []
for x in tracks:
    data.append({'Track_Name':x.title,'plays':str(x.playback_count)})
df = pd.DataFrame(data)
df1 = df[['Track_Name']] 
df2 = df[['plays']]
df1 = str(df1)
df2 = str(df2)
ind = np.arrange(df1)
plt.bar(ind,df2)
plt.show()

绘图图:

给熊猫一个数据框,你可以使用
df.plot(kind='bar',x='Track'u Name',y='plays')绘制
Track\u Name
列与
plays
列的条形图


对于很长的
Track\u Name
s,另一种可能是制作水平条形图。 下面,
ax.yaxis.set\u ticklebels
用于缩短长
轨道名称。(注意,如果您愿意,也可以使用
ax.xaxis.set_ticklebels
来缩短上面的x-ticklebels):

将熊猫作为pd导入
将matplotlib.pyplot作为plt导入
数据帧({'Track_Name':['Silvestre-Sport Theory 12'Snippets(PH002)','Renato-Alo-Alo 12'Snippets(PH001)','Lenha','Nuvens','Vou láfora buscarágua','Untitled','plays':['1448','1505','936','452','354','324'])
df['plays']=df['plays'].astype(int)
ax=df.plot(kind='barh',x='Track\u Name',y='plays')
ax.yaxis.set_ticklebals([item if len(item)<10 else'{}…{})。df['Track_Name']]中的项的格式(item[:5],item[-5:]))
plt.show()

给熊猫一个数据框,你可以使用
df.plot(kind='bar',x='Track'u Name',y='plays')绘制
Track\u Name
列与
plays
列的条形图


对于很长的
Track\u Name
s,另一种可能是制作水平条形图。 下面,
ax.yaxis.set\u ticklebels
用于缩短长
轨道名称。(注意,如果您愿意,也可以使用
ax.xaxis.set_ticklebels
来缩短上面的x-ticklebels):

将熊猫作为pd导入
将matplotlib.pyplot作为plt导入
数据帧({'Track_Name':['Silvestre-Sport Theory 12'Snippets(PH002)','Renato-Alo-Alo 12'Snippets(PH001)','Lenha','Nuvens','Vou láfora buscarágua','Untitled','plays':['1448','1505','936','452','354','324'])
df['plays']=df['plays'].astype(int)
ax=df.plot(kind='barh',x='Track\u Name',y='plays')
ax.yaxis.set_ticklebals([item if len(item)<10 else'{}…{})。df['Track_Name']]中的项的格式(item[:5],item[-5:]))
plt.show()

您要查找的函数可能是,而不是
np.arrange
。还要注意,
np.arange
需要一个整数参数,而不是字符串。非常感谢unutbu,我不知道arrange只需要整数。您建议使用哪种功能?查看
df.to_dict('list')
会很有帮助,这样我们就可以重现您的情况,也许可以更好地了解如何帮助您。更正:
np.arange
也可以接受浮动。非常感谢您的更正。关于df.to_dict(“列表”)。这是输出:{'Track_Name':['Silvestre-Sport Theory 12“Snippets(PH002)”,'Renato-Alo-Alo 12“Snippets(PH001)”,'Lenha','Nuvens','Vou láfora buscarágua','Untitled','plays':['1448','1505','936','452','354',324']}您正在寻找的函数可能是,而不是
np arrange
。还要注意,
np.arange
需要一个整数参数,而不是字符串。非常感谢unutbu,我不知道arrange只需要整数。您建议使用哪种功能?查看
df.to_dict('list')
会很有帮助,这样我们就可以重现您的情况,也许可以更好地了解如何帮助您。更正:
np.arange
也可以接受浮动。非常感谢您的更正。关于df.to_dict(“列表”)。这是输出:{'Track_Name':['Silvestre-Sport Theory 12'片段(PH002)','Renato-Alo-Alo 12'片段(PH001)','Lenha','Nuvens','Vou láfora buscarágua','Untitled','plays':['1448','1505','936','452','354','324']
import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame( {'Track_Name': ['Silvestre - Sport Theories 12" Snippets ( PH002 )', 'Renato - Alo Alo 12" Snippets ( PH001 )', 'Lenha', 'Nuvens', 'Vou lá fora buscar água', 'Untitled'], 'plays': ['1448', '1505', '936', '452', '354', '324']})
df['plays'] = df['plays'].astype(int)

df.plot(kind='bar', x='Track_Name', y='plays')
plt.xticks(rotation=10)
plt.show()
import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame( {'Track_Name': ['Silvestre - Sport Theories 12" Snippets ( PH002 )', 'Renato - Alo Alo 12" Snippets ( PH001 )', 'Lenha', 'Nuvens', 'Vou lá fora buscar água', 'Untitled'], 'plays': ['1448', '1505', '936', '452', '354', '324']})
df['plays'] = df['plays'].astype(int)

ax = df.plot(kind='barh', x='Track_Name', y='plays')
ax.yaxis.set_ticklabels([item if len(item) < 10 else '{}...{}'.format(item[:5], item[-5:]) for item in df['Track_Name']])
plt.show()