сюжет временных рядов с использованием datashader - PullRequest
0 голосов
/ 10 октября 2018

Моя цель состоит в том, чтобы построить данные временных рядов, используя datashader, и сделать их интерактивными, используя bokeh или datashader, если это возможно.

Я пытался следовать этому уроку - http://datashader.org/user_guide/3_Timeseries.html и подошелс графиком, который показан в самом конце страницы URL.

Ниже приведен код:

n = 100000
points = 10
data = np.random.normal(0, 100, size = (n, points))
df = ds.utils.dataframe_from_multiple_sequences(np.arange(points), data)
cvs = ds.Canvas(plot_height=400, plot_width=1000)
agg = cvs.line(df, 'x', 'y', ds.count())   
img = tf.shade(agg, how='eq_hist')

В приведенном выше коде сформирован объект изображения, теперь как мне сделатьиспользование этого объекта img для создания интерактивного графика (с использованием bokeh или datashader) с отображением осей x и y, отображением деталей каждой точки при наведении на графике и возможностью масштабирования и увеличения.

Кроме того, приведенный выше кадр данных имеет несколько столбцов, но для построения графика несколько столбцов добавляются в виде строк в кадре данных, разделенных строкой NA в кадре данных (как указано в приведенном выше коде).Возможно ли, если я смогу построить столбцы разных цветов на интерактивном графике, чтобы их было легко отличить в графике данных.

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 11 октября 2018

Из этого можно сделать интерактивный сюжет Боке с помощью HoloViews:

import datashader as ds, numpy as np, holoviews as hv
from holoviews.operation.datashader import datashade

n = 100000
points = 10
data = np.random.normal(0, 100, size = (n, points))
df = ds.utils.dataframe_from_multiple_sequences(np.arange(points), data)

hv.extension("bokeh")
datashade(hv.Curve(df)).options(width=1000)

Unzoomed

Zoomed

Сколько нужно цветов для раскраски?Люди не могут различить 100 000 цветов, но я работаю над https://github.com/pyviz/colorcet/issues/11, чтобы получить как минимум несколько сотен различимых цветов.Если вам нужно всего несколько десятков (например, для раскраски по категориям), существующие цветовые циклы должны работать нормально.Данные каким-то образом должны сначала указывать категорию ...

...