【问题标题】:Offline plot ignoring layout parameters in plotly python API离线绘图忽略绘图python API中的布局参数
【发布时间】:2016-03-21 10:38:15
【问题描述】:

我正在制作一个中等成功的 3D 曲面图,但某些参数对我的标志没有响应,例如轴范围、标签和对数比例,但有些参数会响应,例如整体标题和纵横比。我无法理解这个问题,谁能看到我做错了什么?

谢谢

def make3dPlot(surfaceMatrix, regionStart, regionEnd):
        data = [go.Surface(z=surfaceMatrix)]
        #data = [go.Surface(z=[[1, 2, 3, 4, 9],[4, 1, 3, 7, 9],[5, 4, 7, 2, 9]])]
        layout = go.Layout(
            title=args.i,
            autosize=True,
            width=1600,
            height=1000,
            yaxis=dict(
                title='Particle Size',
                titlefont=dict(
                    family='Arial, sans-serif',
                    size=18,
                    color='lightgrey'
                ),
                type='log',
                autorange=True,
                #range=[regionStart, RegionEnd]
            ),
            xaxis=dict(
                title="Genomic Co-ordinates",
                titlefont=dict(
                    family='Arial, sans-serif',
                    size=18,
                    color='lightgrey'
                ),
                #type='log',
                #autorange=False,
                range=[10, 15]#regionStart, regionEnd]
            ),
            scene=dict(
                aspectratio=dict(x=3, y=1, z=1),
                aspectmode = 'manual'
            )
        )
        fig = go.Figure(data=data, layout=layout)


        plotly.offline.plot(fig)

使用 Mock 数据看起来像这样,轴未更改且没有标签:

【问题讨论】:

    标签: python plotly


    【解决方案1】:

    根据 docsxaxisyaxiszaxis,plotly 中的 3D 绘图是 Scene 的一部分,而不是 Layout

    例子:

    from plotly.offline import iplot, init_notebook_mode
    import numpy as np
    from plotly.graph_objs import Surface, Layout, Scene
    init_notebook_mode()
    
    x, y = np.mgrid[-2*np.pi:2*np.pi:300j, -2:2:300j]
    surface = Surface(
        x=x, y=y, z=-np.cos(x)+y**2/2
    )
    
    iplot([surface])
    
    layout = Layout(scene=Scene(xaxis=dict(range=[-1,1])))
    iplot(dict(data=[surface], layout=layout))
    

    另见this question

    【讨论】:

    • 哇,我现在觉得自己很傻!不敢相信我错了。不过那个文档页面太长了,我发现很难弄清楚什么是什么的父级。上上下下一百次了。谢谢
    猜你喜欢
    • 1970-01-01
    • 2011-07-14
    • 1970-01-01
    • 2020-11-07
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-30
    相关资源
    最近更新 更多