jupyter笔记本中的Plotly数据占用了大量内存

问题描述 投票:0回答:1

我可能正在做一些非常愚蠢的事情,但我一直在使用我的jupyter笔记本中的情节离线

import plotly.offline as py
py.init_notebook_mode(connected=True)
from plotly.graph_objs import *

我正在尝试显示一系列可以使用滑块导航的图像。具有图像数据的整个numpy阵列是50个图像x 64宽x 64高。

我把它放到我在网上找到的代码拼凑在一起的下面的滑块功能中。返回的Figure对象本身并不是很大。然而,当调用plotly的iplot时,我的jupyter笔记本在磁盘上的大小(由ls -l测量)非常大 - 就像15 MB,即使numpy源数据像1MB。对于更大/更多的数字,这变得难以管理。有谁知道发生了什么?

def slider_ims(imgs):

    imgs = np.flip(imgs,1) 

    data = [dict(
            type='heatmap',
            z = imgs[step,:,:],
            visible = False,
            showscale=False,
            xaxis="x",
            yaxis="y",
            name = 'z = '+str(step)) for step in np.arange(imgs.shape[0])]
    data[0]['visible'] = True


    steps = []
    for i in range(len(data)):
        step = dict(
            method = 'restyle',
            args = ['visible', [False] * len(data)],
            label = str(i)
        )
        step['args'][1][i] = True # Toggle i'th trace to "visible"
        steps.append(step)

    sliders = [dict(
        active = 0,
        currentvalue = {"prefix": "Frame: "},
        pad = {"t": 50},
        steps = steps,
        ticklen = 0,
        minorticklen = 0
    )]

    layout = Layout(
             sliders = sliders,
             font=Font(family='Balto'),
             width=800,
             height=600,
            )


    fig=Figure(data=data, layout=layout)
    py.iplot(fig)
    return fig
python memory plotly jupyter
1个回答
0
投票

通常情节剧情的情节很大。您的笔记本电脑尺寸增加了,因为您使用内联图(py.iplot)将图表保存在笔记本上。 如果您不希望笔记本电脑如此之大,只需使用普通图(py.plot)并将图保存在另一个文件中。 您可以阅读plotly的文档

© www.soinside.com 2019 - 2024. All rights reserved.