Как сделать так, чтобы график Holoviews отображался в блокноте Google Colab Laboratory? - PullRequest
0 голосов
/ 20 февраля 2019

Я перепробовал все три бэкэнда, но не показал ни одного графика.Пример:

!pip install -q holoviews

import holoviews as hv
from holoviews import opts

hv.extension('matplotlib')


# build a dataset where multiple columns measure the same thing
stamp    = [.33, .33, .34, .37, .37, .37, .37, .39, .41, .42,
            .44, .44, .44, .45, .46, .49, .49]
postcard = [.20, .20, .21, .23, .23, .23, .23, .24, .26, .27,
            .28, .28, .29, .32, .33, .34, .35]

group = "U.S. Postage Rates (1999-2015)"
stamp    = hv.Curve(stamp, vdims='Rate per ounce', label='stamp', group=group)
postcard = hv.Curve(postcard, vdims='Rate per ounce', label='postcard', group=group)
postage = (stamp * postcard)

postage.opts(
    opts.Curve(interpolation='steps-mid', linestyle=hv.Cycle(values=['--', '-'])),
    opts.Overlay(legend_position='top_left'))

Код может работать, но не будет отображать график в результате.

Ответы [ 2 ]

0 голосов
/ 04 апреля 2019

Назовите это один раз

%env HV_DOC_HTML=true

Затем в каждой ячейке.

hv.extension('bokeh')

Адаптировано с этот ответ от @ james-a-bednar

0 голосов
/ 23 февраля 2019

Вам нужно использовать средство визуализации matplotlib вне ноутбука Jupyter, это делается следующим образом: mr = hv.renderer ('matplotlib') mr.show (кривая)

Рабочая версия: https://colab.research.google.com/drive/1CrfBZsTzYjf3NpwQJ1VwjQ_Eq1cjMBpe

!pip install -q holoviews 
import holoviews as hv
from holoviews import opts

hv.extension('matplotlib')


# build a dataset where multiple columns measure the same thing
stamp    = [.33, .33, .34, .37, .37, .37, .37, .39, .41, .42,
            .44, .44, .44, .45, .46, .49, .49]
postcard = [.20, .20, .21, .23, .23, .23, .23, .24, .26, .27,
            .28, .28, .29, .32, .33, .34, .35]

group = "U.S. Postage Rates (1999-2015)"
stamp    = hv.Curve(stamp, vdims='Rate per ounce', label='stamp', group=group)
postcard = hv.Curve(postcard, vdims='Rate per ounce', label='postcard', group=group)
postage = (stamp * postcard)

postage.opts(
    opts.Curve(interpolation='steps-mid', linestyle=hv.Cycle(values=['--', '-'])),
    opts.Overlay(legend_position='top_left'))

mr = hv.renderer('matplotlib')
mr.show(postage)

Боке:

import numpy as np
from bokeh.plotting import figure, show
from bokeh.io import output_notebook
hv.extension('bokeh')

output_notebook()
plot = figure(y_axis_label=("U.S. Postage Rates (1999-2015)"), plot_width=300, plot_height=300)
plot.step(x=list(range(0, 17)), y=[.20, .20, .21, .23, .23, .23, .23, .24, .26, .27,
            .28, .28, .29, .32, .33, .34, .35], color="#FB8072")
show(plot)
...