带绘图的堆叠条形图

我正在尝试用Python构建一个带有情节的堆叠条形图。


我的目标是为哥本哈根的每个城市地区做一个酒吧,那里堆放着不同的树木类型。我可以运行我的代码直到第10棵树,在此之后,我得到一个索引错误:


单个位置索引器越界


当我只为10棵树或更少的树木做这件事时,一切看起来都很好。


我的代码如下所示


    ## df is a dataframe where each row is a tree type

    ## and each column a city district


    x = df.columns ## district names

    trees = df.index ## tree names


    for i in range(0,len(trees)):

        if i == 0:

            fig = go.Figure(go.Bar(x=x, y=df.iloc[:,i].values, name = trees[i]))

        else:

            fig.add_trace(go.Bar(x=x, y=df.iloc[:,i].values, name = trees[i]))


    fig.update_layout(barmode='stack')

    fig.show()

我似乎无法弄清楚这个错误是什么。


斯蒂芬大帝
浏览 83回答 1
1回答

慕哥6287543

乍一看,您似乎在混淆列和行。如果考普曼纳霍芬只有 9 个区,但您有 10 种或更多树种,那么您可能应该使用来绘制按区绘制树木数量。但可以肯定的是,请提供数据帧的尺寸,从数据帧中选择几行,以及前9种树类型的条形图。y=df.iloc[i,:]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python