Пример #1
0
def test_plotly(remove_build):
    """Tests plotly."""
    viz = Plotly()
    ctrl = Nouislider()
    ctrl2 = Button()

    path = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'build')
    layout = Layout(directory=path)
    layout.add(viz)
    layout.add_sidebar(ctrl)
    layout.add_sidebar(ctrl2)
    layout.subscribe(callback, ctrl.on_change)
    layout.subscribe(callback, ctrl2.on_click)
    layout.build()

    env = os.environ
    env['PYTHONPATH'] = '{}:{}'.format(os.getcwd(),
                                       os.environ.get('PYTHONPATH', ''))
    server = subprocess.Popen(os.path.join(path, 'src/server.py'), env=env)
    time.sleep(5)

    driver = PhantomJS()
    driver.get('http://localhost:9991')

    assert driver.title == 'Bowtie App'

    server.kill()
Пример #2
0
def test_build(remove_build):
    ctrl = Nouislider()
    viz = Plotly()

    layout = Layout()
    layout.add_controller(ctrl)
    layout.add_visual(viz)
    layout.subscribe(ctrl.on_change, callback)
    layout.build()
Пример #3
0
def test_build(remove_build):
    """Tests the build process."""
    ctrl = Nouislider()
    viz = Plotly()

    path = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'build')
    layout = Layout(directory=path)
    layout.add_sidebar(ctrl)
    layout.add(viz)
    layout.subscribe(callback, ctrl.on_change)
    layout.build()
Пример #4
0
def test_build(build_path):
    """Tests the build process."""
    reset_uuid()
    ctrl = Nouislider()
    viz = Plotly()

    app = App(directory=build_path)
    app.add_sidebar(ctrl)
    app.add(viz)
    app.subscribe(callback, ctrl.on_change)
    app.build()
Пример #5
0
def test_build(build_path):
    """Tests the build process."""
    reset_uuid()
    ctrl = Nouislider()
    viz = Plotly()

    layout = Layout(directory=build_path)
    layout.add_sidebar(ctrl)
    layout.add(viz)
    layout.subscribe(callback, ctrl.on_change)
    layout.build()
Пример #6
0
def test_build(build_reset, monkeypatch):
    """Tests the build process."""
    reset_uuid()
    ctrl = Nouislider()
    viz = Plotly()

    app = App(__name__, sidebar=True)
    app.add_sidebar(ctrl)
    app.add(viz)
    app.subscribe(ctrl.on_change)(callback)
    # pylint: disable=protected-access
    app._build()
Пример #7
0
def test_build(build_path, monkeypatch):
    """Tests the build process."""
    monkeypatch.setattr(App, '_sourcefile',
                        lambda self: 'bowtie.tests.test_compile')
    reset_uuid()
    ctrl = Nouislider()
    viz = Plotly()

    app = App()
    app.add_sidebar(ctrl)
    app.add(viz)
    app.subscribe(callback, ctrl.on_change)
    # pylint: disable=protected-access
    app._build()
Пример #8
0
#!/usr/bin/env python
"""Example Bowtie App."""

from bowtie import App
from bowtie.control import Nouislider
from bowtie.visual import Plotly
from bowtie import Pager, cache, command

import numpy as np
from numpy import random as rng
import plotlywrapper as pw

app = App(debug=True, sidebar=True)
pager = Pager()
sigma = Nouislider(start=0., minimum=0.1, maximum=50.)
mainplot = Plotly()

app.add_sidebar(sigma)
app.add(mainplot)


def initialize():
    cache.save('data', [0.] * 100)


@app.subscribe(pager)
def upgraph():
    data = cache.load('data')
    value = float(sigma.get())
    data.pop(0)
    data.append(value * rng.randn() + data[-1])
Пример #9
0
'''
The only working example in bowtie so far. ¯\(°_o)/¯
python 2.7
bowtie==0.3.2
'''
from bowtie.visual import Plotly
from bowtie.control import Nouislider
import numpy as np
import plotlywrapper as pw

sine_plot = Plotly()
freq_slider = Nouislider(caption='frequency', minimum=1, maximum=10, start=5)


def listener(freq):
    freq = float(freq[0])
    t = np.linspace(0, 10, 100)
    sine_plot.do_all(pw.line(t, np.sin(freq * t)).to_json())


from bowtie import command


@command
def construct(path):
    from bowtie import Layout
    layout = Layout(directory=path)
    layout.add_sidebar(freq_slider)
    layout.add(sine_plot)
    layout.subscribe(listener, freq_slider.on_change)
    layout.build()
Пример #10
0
import subprocess
import time

import pytest
from plotly.graph_objs import Scatter
from plotly.graph_objs import Layout as PlotLayout

from bowtie import App
from bowtie.control import Nouislider, Button
from bowtie.visual import Plotly
from bowtie.tests.utils import reset_uuid

reset_uuid()

# pylint: disable=invalid-name
viz = Plotly()
ctrl = Nouislider()
ctrl2 = Button()


def callback(*args):
    """dummy function"""
    # pylint: disable=unused-argument
    chart = {
        "data": [Scatter(x=[1, 2, 3, 4], y=[4, 1, 3, 7])],
        "app": PlotLayout(title="hello world")
    }
    viz.do_all(chart)


# pylint: disable=unused-argument
Пример #11
0
business = pd.read_pickle('yelp_business.pkl.gz')
checkin = pd.read_pickle('yelp_checkin.pkl.gz')
reviews = pd.read_pickle('reviewsub.pkl.gz')


def dropdown_categories():
    allcats = business.categories.str.split(';')
    cats = []
    for cat in allcats:
        cats += cat
    categories = sorted(set(cats))
    return Dropdown(values=categories, labels=categories, caption='Category')


catdd = dropdown_categories()
stars = Plotly()
revdate = Plotly()
busy = Plotly()


def gen_stars(label):
    buss1 = business[business.categories.str.contains(label)]

    cache['bids'] = buss1.business_id
    chart = pw.scatter(buss1.review_count, buss1.stars, text=buss1.name)
    chart.xlabel('reviews')
    chart.ylabel('stars')
    chart.title(label)
    chart.layout['hovermode'] = 'closest'
    return chart
Пример #12
0
iris = datasets.load_iris()

attrs = iris.feature_names

axis_map = {
    "sepal length (cm)": 0,
    "sepal width (cm)": 1,
    "petal length (cm)": 2,
    "petal width (cm)": 3,
}

xdown = Dropdown(caption='X variable', labels=attrs, values=attrs)
ydown = Dropdown(caption='Y variable', labels=attrs, values=attrs)
clslider = Slider(caption='Cluster count', start=3, minimum=1, maximum=9)

kplot = Plotly()


def Kplot(x, y, N):
    if x is None or y is None or N is None:
        return
    x_var = xdown.get()['value']
    y_var = ydown.get()['value']
    x = axis_map[x_var]
    y = axis_map[y_var]
    N = clslider.get()
    k_means = KMeans(n_clusters= N)
    k_means.fit(iris.data)
    palette = sns.palettes.color_palette('hls', N)
    colormap = np.array(palette.as_hex())[k_means.labels_]
    data = go.Scatter(
Пример #13
0
from sklearn.kernel_ridge import KernelRidge

iris = pd.read_csv('./iris.csv')
iris = iris.drop(iris.columns[0], axis=1)

attrs = iris.columns[:-1]

xdown = DropDown(caption='X variable', labels=attrs, values=attrs)
ydown = DropDown(caption='Y variable', labels=attrs, values=attrs)
zdown = DropDown(caption='Z variable', labels=attrs, values=attrs)
alphaslider = Slider(caption='alpha parameter',
                     start=10,
                     minimum=1,
                     maximum=50)

mainplot = Plotly()
mplot3 = Plotly()
linear = Plotly()
table1 = SmartGrid()


def pairplot(x, y):
    print('hellox')
    if x is None or y is None:
        return
    x = x['value']
    y = y['value']
    plot = pw.Chart()
    for i, df in iris.groupby('Species'):
        plot += pw.scatter(df[x], df[y], label=i)
    plot.xlabel(x)