Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 情节–;按数字y对垂直堆叠条形图排序_Python 3.x_Graph_Plotly_Plotly Dash - Fatal编程技术网

Python 3.x 情节–;按数字y对垂直堆叠条形图排序

Python 3.x 情节–;按数字y对垂直堆叠条形图排序,python-3.x,graph,plotly,plotly-dash,Python 3.x,Graph,Plotly,Plotly Dash,我需要能够根据每个堆栈中的数字y值对堆叠条形图进行排序。在Plotly的R版本中似乎有一个解决方案可以解决这个问题,但我还没有找到一个用于Python的解决方案,或者更具体地说,Plotly Dash 下面是两个示例,说明如何在R中解决排序问题: (一) (二) 以下是绘制堆叠条形图的基本代码: import plotly.plotly as py import plotly.graph_objs as go trace1 = go.Bar( x=['giraffes', 'orang

我需要能够根据每个堆栈中的数字y值对堆叠条形图进行排序。在Plotly的R版本中似乎有一个解决方案可以解决这个问题,但我还没有找到一个用于Python的解决方案,或者更具体地说,Plotly Dash

下面是两个示例,说明如何在R中解决排序问题:

(一)

(二)

以下是绘制堆叠条形图的基本代码:

import plotly.plotly as py
import plotly.graph_objs as go

trace1 = go.Bar(
    x=['giraffes', 'orangutans', 'monkeys'],
    y=[20, 14, 23],
    name='SF Zoo'
)
trace2 = go.Bar(
    x=['giraffes', 'orangutans', 'monkeys'],
    y=[12, 18, 29],
    name='LA Zoo'
)

data = [trace1, trace2]
layout = go.Layout(
    barmode='stack',
)

fig = go.Figure(data=data, layout=layout)
py.iplot(fig, filename='stacked-bar')
以下是实际输出:

根据x轴(分类)对这些条进行排序很容易。按字母顺序排列x所需的唯一代码是:

layout = go.Layout(
    barmode='stack',
    xaxis={'categoryorder': 'category ascending'}
)
但是,是否也可以使用Plotly-Dash(Python)按数字y值对每个堆栈进行排序?如果对每个堆叠条进行排序,使每个堆叠条中的最低y值位于条的底部(不考虑轨迹),则预期结果如下:


现在似乎只有类别可以排序。

只需切换跟踪的顺序即可。打印记录道,并根据写入记录道的顺序显示图例