在Plotly 3.0中设置图例文本颜色

时间:2018-07-06 12:17:11

标签: python plotly plotly.js

我刚安装了最新的Plotly(3.0),但无法设置图例文字的颜色。

这是我的代码:

import plotly.graph_objs as go
import numpy as np

x = np.random.randn(1000)
y = np.random.randn(1000)

fig = go.FigureWidget({'x':x,'y':y,'type':'histogram2dcontour','colorscale':'Viridis'}],
layout=go.Layout(title='test',width=700,plot_bgcolor='rgba(0,0,0,0)',
paper_bgcolor='rgba(0,0,0,0)'))

fig.layout.titlefont.color = 'orange'
fig.layout.xaxis.color = 'white'
fig.layout.yaxis.color = 'white'
fig.layout.legend.font.size = 2000
fig.layout.legend.font.color = 'red'

fig

可以看到,下面的图例文本保持不变。奇怪的是,fig.layout.legend.font.color的属性包括大写字母,isdigit类方法等。

这是错误还是我错过了什么?

非常感谢任何帮助。

谢谢。

Legend text unchanged.

1 个答案:

答案 0 :(得分:3)

因为您使用的是histogram2contour,所以右侧的颜色栏不是图例,而是实际上称为colorbar的对象。要更新它,您可以在跟踪中配置它的属性。我在下面的示例中将刻度线标记为橙色,将标题标记为红色。我使用Jupyter Notebooks创建了示例,因此我不得不将其配置为脱机,但您也没有。 Here是颜色栏对象的文档。

 import plotly.graph_objs as go
 from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
 init_notebook_mode(connected=True)

 import numpy as np

 x = np.random.uniform(-1, 1, size=500)
 y = np.random.uniform(-1, 1, size=500)

 trace = [go.Histogram2dContour(
         x = x,
         y = y,
     colorbar=dict(
         title='Colorbar',
         tickfont={'color':'#E90' },
         titlefont={"color":'#FF0000'}
     ),
 )]

 iplot(trace, filename = "Basic Histogram2dContour")

enter image description here