Plotly: определение выделения линии перед построением - PullRequest
0 голосов
/ 11 марта 2019

По умолчанию в графике отображается строка для каждой доступной категории (или столбца, если источником является кадр данных Pandas, а вы используете iplot()).Чтобы отобразить подмножество серии , необходимо выбрать или отменить выбор каждого из них по одному.Можно ли определить подмножество доступных серий для построения графика, оставив остальные «не выбранными», но все еще доступные в легенде?Если нет, есть ли еще способ отменить выбор каждой серии, а затем отобразить их одну за другой?

Это не большая проблема для небольшого числа серий, но она быстро становится утомительной для больших группкак вы увидите на демонстрации ниже, используя Блокнот Jupyter:

Фрагмент 1

import plotly
import cufflinks as cf
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
import pandas as pd
import numpy as np


# setup
init_notebook_mode(connected=True)
np.random.seed(123)
cf.set_config_file(theme='pearl')

# Random data using cufflinks
df1 = cf.datagen.lines()
df2 = cf.datagen.lines()
df3 = cf.datagen.lines()
df = pd.merge(df1, df2, how='left',left_index = True, right_index = True)
df = pd.merge(df, df3, how='left',left_index = True, right_index = True)


iplot(df1.iplot(asFigure=True, kind='scatter',xTitle='Dates',yTitle='Returns',title='Returns'))

Сюжет 1: - Несколько серий

enter image description here

График 2: - Многие серии

Тот же фрагмент, что и выше, но последняя строка изменена на:

iplot(df.iplot(asFigure=True, kind='scatter',xTitle='Dates',yTitle='Returns',title='Returns'))

enter image description here

Взаимодействие:

Если вы нажмете RMO.VO, вы увидите линиюИсчезают:

enter image description here

Я надеялся, что такой параметр, как CTRL+Mouseclick, сохранит выбранную серию и удалит остальные.Но нет. Есть ли способ сделать это?Или есть способ определить выбранное подмножество программно?

Спасибо за любые предложения!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...