Seaborn Barplot和Lineplot(共享Y轴)无法与其他图形使用相同的工作代码

时间:2019-04-10 15:50:59

标签: python pandas matplotlib graph seaborn

借助该站点,我已经能够绘制多种图形类型,但是即使使用相同的完全相同的代码在另一幅图形上工作,也只有一个图形无法工作。

此工作代码

fig, ax = plt.subplots(figsize=(15,6))
g = sns.lineplot(x='report_date',  y='UTL_R', data=tm_daily_df, ax=ax, hue = 'shift',
             marker='o', markersize=10)
ax2 = ax.twinx()
g = sns.barplot(x='report_date',  y='Head_Count', data=tm_daily_df, ax=ax2, hue='shift',alpha=.5)
ax.set_title('--Utilization Ratio-- vs □□HeadCount□□', fontsize = 17)
plt.show()

tm_daily_df是哪里数据

  report_date shift  UTL_R  Head_Count
0      3/31/19     A   1.00          30
1       4/1/19     A   1.05          58
2       4/2/19     A   1.02          64
3       4/3/19     A   1.00          61
4       4/4/19     A   1.00          55
5       4/5/19     A   0.97          53
6       4/6/19     A   1.02          40
7      3/31/19     1   0.97          10
8      3/31/19     2   1.07           3
9      3/31/19     3   1.01           7
10      4/1/19     1   1.10          24
11      4/1/19     2   1.02          14
12      4/1/19     3   1.00          10
13      4/2/19     1   1.04          26
14      4/2/19     2   1.02          18
15      4/2/19     3   0.98          10
16      4/3/19     1   0.95          25
17      4/3/19     2   0.99          16
18      4/3/19     3   1.10          10
19      4/4/19     1   1.05          17
20      4/4/19     2   0.95          15
21      4/4/19     3   1.00          13
22      4/5/19     1   0.94          20
23      4/5/19     2   1.02          15
24      4/5/19     3   0.95           8
25      4/6/19     1   1.07          19
26      4/6/19     2   1.06           9
27      4/6/19     3   0.81           2

提供此结果:

Graph

现在,当我尝试对一组相似的数据执行完全相同的操作时 job_hours_df_shiftday_grouped =

   report_date  shift  999  load_count
0   2019-03-31      1   42       227.0
1   2019-03-31      2   13       141.0
2   2019-03-31      3   79       267.0
3   2019-04-01      1  146       580.0
4   2019-04-01      2  177       627.0
5   2019-04-01      3  127       460.0
6   2019-04-02      1  192       583.0
7   2019-04-02      2  121       626.0
8   2019-04-02      3   98       291.0
9   2019-04-03      1  172       580.0
10  2019-04-03      2   83       372.0
11  2019-04-03      3   78       323.0
12  2019-04-04      1   83       403.0
13  2019-04-04      2   69       340.0
14  2019-04-04      3   86       268.0
15  2019-04-05      1  164       567.0
16  2019-04-05      2  169       593.0
17  2019-04-05      3   48       249.0
18  2019-04-06      1  102       304.0
19  2019-04-06      2   48       246.0
20  2019-04-06      3    4         0.0
fig, ax = plt.subplots(figsize=(15,6))
g = sns.lineplot(x='report_date',  y='999', data=job_hours_df_shiftday_grouped, ax=ax, hue = 'shift',
             marker='o', markersize=10)
ax2 = ax.twinx()
g = sns.barplot(x='report_date',y='load_count',data=job_hours_df_shiftday_grouped, ax=ax2, alpha=.5, 
                hue = 'shift')
ax.set_title('Daily 999 instances by Shift', fontsize = 20)
plt.show()

它返回以下内容: Bad Graph

请注意日期和线图的缺乏,但辅助轴在那里。 我已经重新格式化了日期,消除了空值,即使如此,由于某种原因,它甚至不显示线图,并且日期格式错误。发生了什么事?

同样,这是工作图形代码:

fig, ax = plt.subplots(figsize=(15,6))
g = sns.lineplot(x='report_date',  y='UTL_R', 
data=tm_daily_df, ax=ax, hue = 'shift',
             marker='o', markersize=10)
ax2 = ax.twinx()
g = sns.barplot(x='report_date',  y='Head_Count', data=tm_daily_df, ax=ax2, hue='shift',alpha=.5)
ax.set_title('--Utilization Ratio-- vs □□HeadCount□□', fontsize = 17)
plt.show()

这是我目前存在的祸根:

fig, ax = plt.subplots(figsize=(15,6))
g = sns.lineplot(x='report_date',  y='999', data=job_hours_df_shiftday_grouped, ax=ax, hue = 'shift',
             marker='o', markersize=10)
ax2 = ax.twinx()
g = sns.barplot(x='report_date',y='load_count', data=job_hours_df_shiftday_grouped, ax=ax2, alpha=.5, 
                hue = 'shift')
ax.set_title('Daily 999 instances by Shift', fontsize = 17)
plt.show()

我不知道第二个图形代码为什么不起作用。它来自相同的数据源,并使用相同的工作代码。

0 个答案:

没有答案