Saa*_*kke 3 python plotly jupyter-notebook plotly-python
.plot我在整个 JupyterLab 笔记本中使用pandas 数据帧的方法,并将绘图后端设置为plotly,并将默认的plotly主题设置为plotly
每次我绘图时,我都会.update_layout事后设置宽度、高度和边距。我这样做是因为我计划将笔记本导出到reveal.js 幻灯片,不设置这些属性会导致不可预测的输出。
这是我的示例代码,它创建了一个没有任何边距的 200x200 绘图。
import pandas as pd
import plotly.io as pio
pd.
options.plotting.backend = "plotly"
pio.templates.default = "plotly"
x = [1, 2, 3, 4]
y = [2, 4, 6, 8]
df = pd.DataFrame({"x": x, "y": y})
fig = df.plot(x=x, y=y)
fig.update_layout(width=200, height=200, margin=dict(l=0, r=0, t=0, b=0))
fig.show()
Run Code Online (Sandbox Code Playgroud)
由于我想要在所有绘图中使用这种绘图大小和边距,因此我想制作一个可以在开始时设置的主题,这样我就不必调用.udpate_layout每个图形。
我试过这个:
import pandas as pd
import plotly.io as pio
# Creat a custom theme and set it as default
pio.templates["custom"] = pio.templates["plotly"]
pio.templates["custom"].layout.margin = dict(l=0, r=0, t=0, b=0)
pio.templates["custom"].layout.width = 200
pio.templates["custom"].layout.height = 200
pio.templates.default = "custom"
x = [1, 2, 3, 4]
y = [2, 4, 6, 8]
df = pd.DataFrame({"x": x, "y": y})
fig = df.plot(x=x, y=y)
fig.show()
Run Code Online (Sandbox Code Playgroud)
不幸的是,生成的图不符合尺寸规格。不过,边距设置受到尊重。
如何创建一个绘图主题来创建指定大小的绘图?
原来我缺少autosize模板中的属性。
当我将其设置为 False 时:
pio.templates["custom"].layout.autosize = False
Run Code Online (Sandbox Code Playgroud)
200x200 的图出来了。
| 归档时间: |
|
| 查看次数: |
1007 次 |
| 最近记录: |