Python 如何在plotly3.6中对条形图进行排序?
我的办公室电脑中安装了plotly3.6,无法升级。 我试着做分类的条形图,但没有成功 我怎样才能做到 我的尝试:Python 如何在plotly3.6中对条形图进行排序?,python,plotly,Python,Plotly,我的办公室电脑中安装了plotly3.6,无法升级。 我试着做分类的条形图,但没有成功 我怎样才能做到 我的尝试: def条形图(x,y): 数据=[go.Bar]( x=x, y=y, 标记={ “颜色”:y, “颜色比例”:“红色” } )] 布局={ “xaxis”:{ “滴答声”:x, “ticktext”:[str(i)表示x中的i], “滴答声”:40, “类型”:“类别”, “categoryorder”:“类别升序” } } fig=go.FigureWidget(数据=数据,布
def条形图(x,y):
数据=[go.Bar](
x=x,
y=y,
标记={
“颜色”:y,
“颜色比例”:“红色”
}
)]
布局={
“xaxis”:{
“滴答声”:x,
“ticktext”:[str(i)表示x中的i],
“滴答声”:40,
“类型”:“类别”,
“categoryorder”:“类别升序”
}
}
fig=go.FigureWidget(数据=数据,布局=布局)
返回iplot(图)
#密谋
x=列表('abcde')
y=[20,10,5,8,9]
条形图(x,y)
相关链接:
(这仅适用于plotly3.10,不适用于3.6)
非常感谢您的帮助。这是您的函数版本,它可以实现这一点。。。基本上,您只需对传递到
go.Bar()
中的x
和y
值进行预排序。因为在这种情况下,x
是一个字符串列表,xaxis.type
被推断为“category”
,并且默认情况下,类别的顺序是提供x
列表的顺序,因此无需修改tickvals
或ticktext
import plotly.graph_objs as go
from plotly.offline import iplot
def barplot(x,y):
sorted_y = sorted(y)
sorted_x = [str(j) for i,j in sorted(zip(y,x))]
data = [go.Bar(
x=sorted_x,
y=sorted_y,
marker={
'color': y,
'colorscale': 'Reds'
}
)]
fig = go.FigureWidget(data=data)
return iplot(fig)
# plot
x = list('abcde')
y = [20,10,5,8,9]
barplot(x,y)