#python #pandas #jupyter-notebook #plotly #plotly-dash
Вопрос:
Я создаю блокнот, который позволяет пользователям выбирать ряды для построения графиков в виде линейчатой диаграммы и точечной диаграммы. Графики генерируются, но в некоторых случаях трудно даже сказать, что график содержит какие-либо данные.
Возьмем, к примеру, этот график. Это график из 5000 записей, все из которых содержат данные в диапазоне от -4 до 4. Я рисую столбец индекса по оси x и значения по оси y. TLDR: Всякий раз, когда диапазон осей 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.show()
Огромное спасибо!!
Ответ №1:
По умолчанию отображаются все данные, но можно ограничить отображаемые данные по оси 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)
Комментарии:
1. Ссылку на масштаб прокрутки можно найти здесь . Если мой ответ помог вам, пожалуйста, подумайте о том, чтобы принять его как правильный ответ.