如何在特定的熊猫列上绘制图

时间:2019-10-02 14:03:39

标签: python pandas data-visualization

所以我在下面显示了df.head(),我想显示跨时间的薪水进度,如您所见,这些年来团队将不断重复,其想法是 显示他们的薪水如何随时间变化。因此,对于teamID ='ATL',我将看到一个图表,该图表从1985年开始一直一直到现在。 我想我需要根据他们的团队ID选择团队,并具有x轴显示时间(年)和Y轴显示年。我不知道如何在熊猫以及数据框中的每个团队中做到这一点。

   teamID yearID lgID payroll_total franchID    Rank    W       G        win_percentage
0   ATL   1985   NL   14807000.0    ATL         5       66      162      40.740741
1   BAL   1985   AL   11560712.0    BAL         4       83      161      51.552795
2   BOS   1985   AL   10897560.0    BOS         5       81      163      49.693252
3   CAL   1985   AL   14427894.0    ANA         2       90      162      55.555556
4   CHA   1985   AL   9846178.0     CHW         3       85      163      52.147239
5   ATL   1986   NL   17800000.0    ATL         4       55      181      41.000000 

2 个答案:

答案 0 :(得分:0)

您可以使用seaborn

import seaborn as sns

sns.lineplot(data=df, x='yearID', y='payroll_total', hue='teamID')

要获得每个团队的不同情节:

for team, d in df.groupby('teamID'):
    d.plot(x='yearID', y='payroll_total', label='team')

答案 1 :(得分:0)

import pandas as pd
import matplotlib.pyplot as plt

# Display the box plots on 3 separate rows and 1 column
fig, axes = plt.subplots(nrows=3, ncols=1)

# Generate a plot for each team
df[df['teamID'] == 'ATL'].plot(ax=axes[0], x='yearID', y='payroll_total')
df[df['teamID'] == 'BAL'].plot(ax=axes[1], x='yearID', y='payroll_total')
df[df['teamID'] == 'BOS'].plot(ax=axes[2], x='yearID', y='payroll_total')  

# Display the plot
plt.show()

根据要显示的团队数量来调整

fig, axes = plt.subplots(nrows=3, ncols=1)

最后,您可以创建一个循环并为每个团队创建可视化文件