亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在plolty3.10中繪制排序條形圖

如何在plolty3.10中繪制排序條形圖

尚方寶劍之說 2022-05-11 14:30:00
我一直在嘗試為某些商店的銷售數據繪制排序的條形圖,但無論我嘗試什么,它都會給我未排序的數據。如何使用 plotly 繪制排序的條形圖。注意: https ://community.plot.ly/t/sort-bars-in-bar-chart-by-value-and-have-each-bar-with-a-different-color/14562沒有為我工作。數據import numpy as npimport pandas as pdimport plotlyimport plotly.offline as pyimport plotly.graph_objs as gofrom plotly.offline import plot, iplot, init_notebook_modeinit_notebook_mode(connected=False)print([(x.__name__,x.__version__) for x in [np, pd,plotly]])url = "https://github.com/bhishanpdl/Datasets/blob/master/store_item_demand/train_store_item_demand.csv?raw=true"df = pd.read_csv(url, parse_dates=['date'],index_col=['date'])使用熊貓(給出排序的條形圖)df1 = df.groupby('store')['sales'].sum().sort_values()df1.plot.bar()使用 plotly3.10(給出未排序的條形圖)(如何解決這個問題?)def barplot(x,y):    data = [go.Bar(        x=x,        y=y,        marker={            'color': y,            'colorscale': 'Reds'        }    )]    layout = {        'xaxis': {            'tickvals': x,            'ticktext': ['store ' + str(i) for i in x],            'tickangle': 40        }    }    fig = go.FigureWidget(data=data, layout=layout)    return iplot(fig)# plotdf1 = df.groupby('store')['sales'].sum().sort_values()x = df1.index.valuesy = df1.valuesbarplot(x,y)
查看完整描述

1 回答

?
繁華開滿天機

TA貢獻1816條經驗 獲得超4個贊

用于此的正確鍵是layout.xaxis.categoryorder, 帶有值"total ascending",但它僅適用于layout.xaxis.typeis "category"。如果您的x數組包含字符串,這會自動發生,但如果您x只包含數字,則必須手動設置它。


這是barplot推薦的函數版本:


def barplot(x,y):

    data = [go.Bar(

        x=x,

        y=y,

        marker={

            'color': y,

            'colorscale': 'Reds'

        }

    )]


    layout = {

        'xaxis': {

            'tickvals': x,

            'ticktext': ['store ' + str(i) for i in x],

            'tickangle': 40,

            'type': "category",

            'categoryorder': 'total ascending'

        }

    }


    fig = go.FigureWidget(data=data, layout=layout)


    return iplot(fig)


查看完整回答
反對 回復 2022-05-11
  • 1 回答
  • 0 關注
  • 151 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號