gpt4 book ai didi

Python Plotly 热图日期时间仅显示部分

转载 作者:行者123 更新时间:2023-12-01 09:18:14 25 4
gpt4 key购买 nike

我正在使用二进制 z 值定义热图日期时间系列。

go.Heatmap 的输出似乎是正确的......但是,该图仅显示了其中的一小部分......

谁能帮忙调试一下吗?我没有为布局组件设置任何限制(也没有设置任何内容)。

{'colorscale': 'Viridis',
'type': 'heatmap',
'x': [datetime.datetime(2018, 6, 4, 12, 0, 5),
datetime.datetime(2018, 6, 4, 12, 0, 10),
datetime.datetime(2018, 6, 4, 12, 0, 15),
datetime.datetime(2018, 6, 4, 12, 0, 20),
.....
all the way to index 719],
'y': ['MotionSensor'],
'z': ['1',
'1',
'1',
'0',
'0',
'0',
'0',
'0',
.....
all the way to index 719]}

sample image

最佳答案

热图出错的原因有很多。

让我指出适用于您的情况的那些!

  1. Z-Axis 元素以字符串形式给出,但我们需要将其作为数字传递,这就是为什么您得到的色阶全部错误。您可以执行类似的操作来获取所有数字。

    arr = ['1', '1', '1', '0']
    [int(i) for i in arr]

这将为我们提供一个数字列表,而不是字符串

  • Z 轴 元素应该是列表的列表(例如:[[1], [2], [3]]))其中第一个列表对应于每个 Y 轴 的值及其相应的 X-Axis 值。像这样的东西:

    Y: 1, X: [1, 2, 3], Z: [1234,1234566,56456]
    Y: 2, X: [1, 2, 3], Z: [5345,2346,7654]

    因此可以将热图属性设置为:

    {x: [1, 2, 3],
    y: [1,2],
    z: [ [1234,1234566,56456], [5345,2346,7654] ] }
  • 尝试这些更改,如果布局问题仍然存在,请告诉我。

    这是一些可供引用的工作示例代码

    import plotly
    import plotly.plotly as py
    from plotly.grid_objs import Grid, Column
    import numpy as np
    import pandas as pd
    import plotly.offline as py_offline
    import plotly.graph_objs as go
    import datetime
    py_offline.init_notebook_mode()

    trace = go.Heatmap(z=
    [[int(i) for i in ['1',
    '1',
    '1',
    '0']]],
    x= [datetime.datetime(2018, 6, 4, 12, 0, 5),
    datetime.datetime(2018, 6, 4, 12, 0, 10),
    datetime.datetime(2018, 6, 4, 12, 0, 15),
    datetime.datetime(2018, 6, 4, 12, 0, 20)],
    y=['MotionSensor'])
    data=[trace]
    py_offline.iplot(data, filename='labelled-heatmap')

    关于Python Plotly 热图日期时间仅显示部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51032938/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com