1

我有一个包含分组数据的 DF,例如:

fieldsX = ['Year_start','Week_start']
f = { 'Integrado':['count'], 'Duration_hours':['min','mean','max'] }
a = a.groupby(fieldsX).agg(f)

这是DF的片段...

                       Duration_hours                      Integrado
                                  min        mean     max      count
Year_start Week_start                                               
2017       1                    428.9  428.900000   428.9          1
           2                      0.5   19.566667   119.8          9
           3                      0.9   14.112500    96.4         16
           4                      1.5    2.850000     4.2          2
           5                      1.8    3.540000     5.5          5
           6                      0.7    2.242857     6.2          7
           7                      0.4  113.075000   696.2          8
           8                      1.0  163.375000  1158.5          8

我正在尝试使用字段的secondary_y[a] 轴来绘制此图Integrado

ax = a.plot(kind='bar', legend=True, fontsize=8, figsize=(15, 10), secondary_y=['Integrado'])

但我无法实现它。所有数据都使用左侧的 y 轴。

在此处输入图像描述

根据 [a] 和 [b] 我应该声明一个列表,包括哪些列应该使用辅助轴,但它现在可以工作了。

更新:之后,我设法使用了辅助轴。看一看。

在此处输入图像描述

诀窍是创建一个无花果对象和第二个ax2轴对象。

fig = plt.figure()
ax  = fig.add_subplot(111)
ax2 = ax.twinx()
a.Integrado.plot(kind='bar',ax=ax)
a.Duration_hours.plot(kind='line',ax=ax2)

现在的问题是,与之前的图相比,在上x-axis,数据消失了。(year,week)

1)关于如何获得x轴信息的想法?

2)为什么参数secondary_y根本不起作用?

谢谢!

[a] - https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.plot.html

[b] - http://pandas.pydata.org/pandas-docs/version/0.21/visualization.html

4

0 回答 0