我是 python 的新手,现在我试图在 matplotlib 中从一个包含大量数据的文件中绘制图表,这些数据有一个数字列和一个文本列,格式如下:
34 Louis Mathews Sullivan
58 Frederick Milton2
1 Mario Cruz Muñoz
我想有这样的情节
像这样:
考虑到这不是数据框,名称列给我带来了一些问题。你能帮助我并支持这件事吗?谢谢
我是 python 的新手,现在我试图在 matplotlib 中从一个包含大量数据的文件中绘制图表,这些数据有一个数字列和一个文本列,格式如下:
34 Louis Mathews Sullivan
58 Frederick Milton2
1 Mario Cruz Muñoz
我想有这样的情节
像这样:
考虑到这不是数据框,名称列给我带来了一些问题。你能帮助我并支持这件事吗?谢谢
让我们尝试将其读取到数据框中,将其拆分并绘制:
df = pd.read_csv('path_to_file.csv', sep='\t', header=None)
df = df[0].str.extract('^([\d]+)\s+(.+)')
df.columns=['number', 'name']
df['number'] = df['number'].astype(float)
df.plot.bar(x='name', y='number')
输出(用于样本数据):
如果您想要单杠,请plot.barh
改用:
df.plot.barh(x='name', y='number')
你得到: