问题描述
当我尝试在renderer = 'svg'
中使用fig.show()
时,使用以下命令时,无法更改图形的大小。
fig = go.figure(data = [
go.Pie(values = target_distribution,labels = labels,textinfo = 'label+percent+value',pull = [0,0.04])],layout = go.Layout(title = 'distribution of Target Variable',width = 800))
fig.show(renderer = 'svg')
如果删除了renderer参数,则可以更改大小。
解决方法
使用静态渲染器(png,svg等)进行绘制,图形的高度,宽度不会反映在结果图中。使用svg渲染器时,它将使用默认设置进行绘制。
静态绘制的渲染器带有一些默认值,可以更改。 要检查特定渲染器的选项,在您的情况下为“ svg”
import plotly.io as pio
svg_renderer = pio.renderers["svg"]
print(svg_renderer)
您将看到一些选项,例如宽度,高度等。
您可以更改默认值:
svg_renderer.width = 800
svg_renderer.height = 500
svg_renderer.engine = 'kaleido' #static image generation dependency,install it using pip or conda.
pio.renderers.default = "svg" # set as default renderer (optional)
基于渲染器更改的图:
import plotly.graph_objects as go
fig = go.Figure(
data=[go.Bar(y=[2,1,3])],layout_title_text="A Figure Displayed with the 'svg' Renderer"
)
fig.show()
有关更多详细信息,请检查详细文档-static plots