如何为plotly的go.Figure()设置自定义坐标轴标题?
如何为plotly的go.Figure()设置自定义坐标轴标题?
嗨,我来帮你搞定这个问题!其实用go.Figure()设置自定义坐标轴标题和你熟悉的Plotly Express路子差不多,甚至有好几种灵活的方式可以实现,我给你一一演示:
方法1:在go.Layout中直接配置
你可以在初始化Layout对象的时候,直接通过xaxis和yaxis参数设置坐标轴标题,代码修改如下:
import numpy as np import plotly.graph_objects as go import plotly.io as pio pio.templates.default = "none" x = np.linspace(0, 10,100) graph = go.Scatter( x=x, y=100*pow(1/2, x), mode='lines', line_width=2, line_color='red', ) # 在Layout里直接定义坐标轴标题 layout = go.Layout( title='My Graph', xaxis=dict(title='自定义X轴标题'), # 设置X轴标题 yaxis=dict(title='自定义Y轴标题') # 设置Y轴标题 ) fig = go.Figure(data=[graph], layout=layout) fig.show()
方法2:使用update_layout()方法
这和你用Plotly Express时的操作几乎一样,先初始化Figure,再调用update_layout()来设置轴标题:
import numpy as np import plotly.graph_objects as go import plotly.io as pio pio.templates.default = "none" x = np.linspace(0, 10,100) graph = go.Scatter( x=x, y=100*pow(1/2, x), mode='lines', line_width=2, line_color='red', ) fig = go.Figure(data=[graph], layout=go.Layout(title='My Graph')) # 用update_layout设置轴标题,和Plotly Express用法一致 fig.update_layout( xaxis_title='自定义X轴标题', yaxis_title='自定义Y轴标题' ) fig.show()
方法3:单独更新坐标轴
如果你只想修改某一个坐标轴的标题,可以用update_xaxes()和update_yaxes()方法,更精准:
import numpy as np import plotly.graph_objects as go import plotly.io as pio pio.templates.default = "none" x = np.linspace(0, 10,100) graph = go.Scatter( x=x, y=100*pow(1/2, x), mode='lines', line_width=2, line_color='red', ) fig = go.Figure(data=[graph], layout=go.Layout(title='My Graph')) # 单独更新X轴标题 fig.update_xaxes(title_text='自定义X轴标题') # 单独更新Y轴标题 fig.update_yaxes(title_text='自定义Y轴标题') fig.show()
另外顺便提一句:其实Plotly Express也能画指数函数,比如用px.line(x=x, y=100*pow(1/2, x))就可以,但既然你已经选择了go.Figure(),上面的几种方法都能完美解决你的需求,选你觉得顺手的就行~
内容来源于stack exchange
相关产品推荐
相关产品推荐

