Plotly:当数据范围较大时使条形图条可见

Plotly: Making bar chart bars visible when data has large range

我正在创建一个笔记本,让用户 select 系列可以绘制条形图和散点图。图表正在生成,但在某些情况下,甚至很难判断图表是否包含任何数据。

以这张图为例。它是一个包含 5000 个条目的图表,所有条目的数据都在 -4 到 4 之间。我在 x 轴上绘制索引列,在 y 轴上绘制值。 TLDR:只要 x 轴范围很大,条形图就会太小而看不到。

到目前为止,我已尝试将图表的默认颜色更改为红色,这样条形图至少会更加突出。但是正如你在图片中看到的那样,它仍然很难看到。

我知道已经有一些方法可以开始绘图放大,这可能是一个很好的解决方案。但是因为我不确定数据会提前是什么样子(它可能是数字、日期、字符串等),我一直在努力创建一个好的启发式算法来使放大的图表看起来不错。

有人对如何配置 plotly 缩放设置或以其他方式使图表在初始渲染时更加可见有建议吗?

我使用以下代码生成图表:

import plotly.graph_objects as go
import numpy as np
import pandas as pd

df = pd.DataFrame(np.random.randn(5000, 1), columns=list('A'))

fig = go.Figure(data=[
    go.Bar( 
        y = df['A'],
        name = 'A'
    )]
)

fig.show()

非常感谢!!

默认显示所有数据,但可以限制显示的x轴数据。您可以在此处指定要显示为初始数据的粒度。您也可以通过点击顶部的缩放图标来更改粒度,但是如果您设置为可以使用鼠标的滚动功能进行缩放会更方便。

import plotly.graph_objects as go
import numpy as np
import pandas as pd

df = pd.DataFrame(np.random.randn(5000, 1), columns=list('A'))

fig = go.Figure(data=[
    go.Bar( 
        y = df['A'],
        name = 'A'
    )]
)
fig.update_layout(xaxis=dict(range=[df.index[1750], df.index[2000]]))
config = dict({'scrollZoom': True})
fig.show(config=config)