0

我想使用袖扣库(即 ipolt())绘制一个包含两个或多个不同水平条形图的图表。我已经使用 cufflinks 库分别绘制了两个条形图,但现在想组合在一个图中。

这是我的代码片段:

params_systems = {
    'kind': 'barh',
    'yTitle': '',
    'xTitle': '',
    'title': '',
    'margin': dict(l=70)
}

a=req_df.groupby(['System'])['System'].count().iplot(**params_systems)

b=dbrs_df.groupby(['System'])['System'].count().iplot(**params_systems)

此代码为我提供了两个单独的条形图。

我也尝试了下面的代码,但随后它以堆栈模式绘制了两个图表。我不希望将两个条形图都堆叠起来。

import pandas as pd
DF1 = pd.concat([a,b])
DF1.iplot(**params_systems)

我应该怎么办?我只想使用 cufflinks 库来完成这项任务。我将不胜感激任何帮助和建议。

4

1 回答 1

0

试试下面的代码。我稍微更改了您的代码,这将起作用。

DF1 = pd.concat([a,b], axis=1)
DF1.iplot(**params_systems)

问题是您以错误的方式连接了两个系列。pd.concat 的默认行为是将一个系列附加到另一个系列的底部,这会导致一个长系列。通过更改轴参数,您可以将两个系列放在一起。这样袖扣就知道如何很好地绘制这两种数据。

于 2017-04-14T10:08:17.410 回答