Plotly AttributeError:“Figure”对象没有属性“update_layout”

Posted

技术标签:

【中文标题】Plotly AttributeError:“Figure”对象没有属性“update_layout”【英文标题】:Plotly AttributeError: 'Figure' object has no attribute 'update_layout' 【发布时间】:2019-11-27 19:59:11 【问题描述】:

我正在尝试为我的情节添加标题,但收到错误消息:

"AttributeError: 'Figure' 对象没有属性 'update_layout'"

情节在没有update_layout 行的情况下有效。我用谷歌搜索了错误消息,没有任何运气。

还有其他方法吗?

from _plotly_future_ import v4_subplots
from plotly.subplots import make_subplots
import plotly.graph_objs as go
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
import plotly.plotly as py

fig1 = make_subplots(
    rows=2, cols=2,
    specs=[["type": "pie", "type": "pie"],
           ["type": "table", "type": "table"]],
)

fig1.add_trace(
    go.Pie(
        labels=pie_alarms_total['alarm_type'],
        values=pie_alarms_total['alarm_timestamp'],
        name="Total Alarms",
        title="test"
    ),
    row=1, col=1

)

fig1.add_trace(
    go.Pie(
        labels=pie_alarms_notbd['alarm_type'],
        values=pie_alarms_notbd['alarm_timestamp'],
        name="No TBDs"
    ),
    row=1, col=2
)

fig1.add_trace(
    go.Table(
        header=dict(
            values=pie_alarms_total['alarm_type'],
            line_color='darkslategray',
            fill_color='lightskyblue'
        ),
        cells=dict(
            values=pie_alarms_total['alarm_timestamp'],
            line_color='darkslategray',
            fill_color='lightcyan'
        )
    ),
    row=2, col=1
)

fig1.add_trace(
    go.Table(
        header=dict(
            values=pie_alarms_notbd['alarm_type'],
            line_color='darkslategray',
            fill_color='lightskyblue'
        ),
        cells=dict(
            values=pie_alarms_notbd['alarm_timestamp'],
            line_color='darkslategray',
            fill_color='lightcyan'
        )
    ),
    row=2, col=2
)

fig1.update_layout(title_text="Test")

plot(fig1, filename="test.html")

我想要所有图片的主标题。

【问题讨论】:

【参考方案1】:

我在Juan Klopper video 中发现了这个问题。这是错误的方法调用:

fig1.update_layout()

更新图形布局的正确方法是调用:

fig1.layout.update()

【讨论】:

这行得通,奇怪的是我从情节文档中发现了不正确的形式:plot.ly/python/line-charts【参考方案2】:

您可以将您的情节版本升级到最新版本,例如:

pip install plotly==4.1.1

【讨论】:

以上是关于Plotly AttributeError:“Figure”对象没有属性“update_layout”的主要内容,如果未能解决你的问题,请参考以下文章

使用 R 和 ggplot2 语法将自定义工具提示添加到 plotly

Plotly:是不是可以在情节时间线上添加第二个 y 轴?

如何在 R 的 plotly 包中使用 plotly 函数?

在没有在线 plotly 帐户的情况下使用 plotly

R语言plotly可视化:plotly可视化基础小提琴图(basic violin plot in R with plotly)

Plotly:如何在 Plotly 中绘制具有渐变颜色的矩形?