小编big*_*dot的帖子

在Jupyter/IPython笔记本中使用散景图表交互

我在Jupyter笔记本中有一个散景图,我想在Bokeh选择改变时运行自定义Python.每当使用源更改回调更改Bokeh选项时,运行自定义Javascript非常容易,但我无法触发Jupyter响应事件.

我认为有可能但记录不完整(请参阅http://bokeh.pydata.org/en/latest/docs/user_guide/server.html)运行单独的Bokeh服务器来接收事件.我想避免运行单独的Bokeh服务器,因为Jupyter服务器已经运行.

bokeh jupyter jupyter-notebook

8
推荐指数
1
解决办法
1325
查看次数

ImportError:没有名为_ctypes的模块.谷歌应用程序引擎与散景图

  • Python 2.7.13
  • Windows 10 64位

我一直在研究这个Udacity web dev课程,并想尝试使用这个例子将简单的散景图嵌入到网页中.运行dev_appserver.py给出错误:ImportError: No module named _ctypes

我有:

  • 安装散景和Numpy通过点子
  • 在app.yaml中包含Numpy

这个答案表明Google App Engine不允许导入ctypes.但是我不确定如何确认Bokeh是否属于这种情况.这是由Bokeh导入ctypes引起的错误吗?如果有的话有解决方法吗?

ERROR    2017-01-21 19:14:53,799 wsgi.py:263]
Traceback (most recent call last):
  File "C:\Users\AppData\Local\Google\Cloud SDK\google-cloud-sdk\platform
\google_appengine\google\appengine\runtime\wsgi.py", line 240, in Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "C:\Users\AppData\Local\Google\Cloud SDK\google-cloud-sdk\platform
\google_appengine\google\appengine\runtime\wsgi.py", line 299, in _LoadHandler
    handler, path, err = LoadObject(self._handler)
  File "C:\Users\AppData\Local\Google\Cloud SDK\google-cloud-sdk\platform
\google_appengine\google\appengine\runtime\wsgi.py", line 85, in LoadObject
    obj = __import__(path[0])
  File "C:\Users\Google Drive\Udacity web development 2017\udacit
y-cs253\bokeh\1_docs_example\main.py", line 2, in …
Run Code Online (Sandbox Code Playgroud)

python google-app-engine ctypes bokeh

8
推荐指数
3
解决办法
1万
查看次数

在离线模式下使用Bokeh图运行Web应用程序?在哪里dl必需的散景文件

我有一个带有python控制器的Web应用程序,其中输出图由Bokeh绘制.在我的主template.html文件中,我加载了bokeh-0.9.2.min.css和bokeh-0.9.2.min.js,如下所示.

我的问题是"如果我在离线模式下将我的网络应用程序作为浏览器应用程序运行,是否可以将这两个文件下载到我的static/jss文件夹中并离线运行?"

<link rel="stylesheet" href="http://cdn.bokeh.org/bokeh/release/bokeh-0.9.2.min.css" type="text/css" />
<script type="text/javascript" src="http://cdn.bokeh.org/bokeh/release/bokeh-0.9.2.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

javascript css python bokeh

7
推荐指数
1
解决办法
3215
查看次数

散景:在图像绘图中实现自定义JavaScript

我想在Bokeh中结合这两个例子:

http://bokeh.pydata.org/en/latest/docs/gallery/image.html http://bokeh.pydata.org/en/latest/docs/user_guide/interaction/callbacks.html#customjs-for-widgets

这个想法似乎很简单.我想绘制第一个链接中显示的图像,然后使用交互式滑块改变正弦函数的频率:

import numpy as np

from bokeh.plotting import figure, show, output_file
from bokeh.models import CustomJS, ColumnDataSource, Slider
from bokeh.io import vform


N = 10

x = np.linspace(0, 10, N)
y = np.linspace(0, 10, N)
xx, yy = np.meshgrid(x, y)
d = np.sin(xx)*np.cos(yy)  

output_file("image.html", title="image.py example")

source = ColumnDataSource(data={'d': d, 'x': x, 'y': y})

p = figure(x_range=[0, 10], y_range=[0, 10])
p.image([source.data['d']], x=[0], y=[0], dw=[10], dh=[10], palette="Spectral11")

callback = CustomJS(args=dict(source=source), code="""
        var data = source.get('data');
        var f = cb_obj.get('value') …
Run Code Online (Sandbox Code Playgroud)

javascript python bokeh

7
推荐指数
1
解决办法
2830
查看次数

在python中实现与bokeh的完整的3d散点图

我目前正在开展一个项目,我希望使用Bokeh输出3D交互式散点图.我想基于2或3个类别对点进行着色,并且我希望在悬停它之后显示与点相对应的基因.我知道Bokeh没有完全实现3D图,我发现了以下脚本,它允许用python(原始代码)生成这样的3D图.

虽然原始代码生成了3D表面,但是通过阅读文档,我已经设法生成了3D绘图.我还设法根据类别对点进行着色.但是,当我尝试生成工具提示时,其信息将在python(或任何其他)中的'extra'变量中编码,我无法生成该信息.我不了解JS,所以我只是想调整变量来看看会发生什么.

我制作的代码是这样的:

from __future__ import division
from bokeh.core.properties import Instance, String
from bokeh.models import ColumnDataSource, LayoutDOM
from bokeh.io import show
import numpy as np


JS_CODE = """
# This file contains the JavaScript (CoffeeScript) implementation
# for a Bokeh custom extension. The "surface3d.py" contains the
# python counterpart.
#
# This custom model wraps one part of the third-party vis.js library:
#
#     http://visjs.org/index.html
#
# Making it easy to hook up python data analytics …
Run Code Online (Sandbox Code Playgroud)

html javascript 3d python-3.x bokeh

7
推荐指数
1
解决办法
4684
查看次数

如何在 python jupyter notebook 中绘图?

我最终希望能够在其他图像的顶部绘制,然后保存绘图数据以供以后查看。

我试过使用 matplotlib。我得到了它的功能,如这里所述,但遇到了很多问题,因为我无法在另一个窗口中打开它,并且当它显示内联时,回调事件不能正确触发。

我正在连接到远程 jupyter 服务器,所以我认为一切都需要内联。我读过一些关于散景的东西,看起来它可能有用,但我不知道从哪里开始。

使用 javascript 这似乎很容易,但我不知道如何让 javasctipt 在 jupyter 中运行。至少当它不仅仅是一行或 2 行时不会。

javascript python matplotlib jupyter

6
推荐指数
1
解决办法
1691
查看次数

如何在散景python中捕获下拉窗口小部件的值?

链接中的散景0.12.1的官方文档提供了以下用于创建下拉列表的代码.

http://bokeh.pydata.org/en/latest/docs/user_guide/interaction/widgets.html#userguide-interaction-widgets

但是,当有人点击并从下拉列表中选择一个值时,它没有明确提到如何捕获下拉窗口小部件的值.

from bokeh.io import output_file, show
from bokeh.layouts import widgetbox
from bokeh.models.widgets import Dropdown

output_file("dropdown.html")

menu = [("Item 1", "item_1"), ("Item 2", "item_2"), None, ("Item 3", "item_3")]
dropdown = Dropdown(label="Dropdown button", button_type="warning", menu=menu)

show(widgetbox(dropdown))
Run Code Online (Sandbox Code Playgroud)

是看到有2个方法叫做on_click()&on_change()但是从文档中无法弄清楚如何捕获值.我们如何将选定的值分配给新变量?

编辑

根据@Ascurion的输入,我更新了我的代码,如下所示.但是当我在下拉列表中选择一个值时,Spyder的ipython控制台中不会打印任何内容.请指教.

    from bokeh.io import output_file, show
    from bokeh.layouts import widgetbox
    from bokeh.models.widgets import Dropdown

    output_file("dropdown.html")


    menu = [("Item 1", "item_1"), ("Item 2", "item_2"), None, ("Item 3", "item_3")]
    dropdown = Dropdown(label="Dropdown button", button_type="warning", menu=menu)

    def function_to_call(attr, old, new):
        print dropdown.value

    dropdown.on_change('value', function_to_call) …
Run Code Online (Sandbox Code Playgroud)

python plot data-visualization widget bokeh

6
推荐指数
2
解决办法
1万
查看次数

使用 Anaconda Cloud 设置和运行 Bokeh 服务器

在 Datacamp Bokeh 课程中宣布,Anaconda Cloud 可以提供散景代码,而不会出现任何复杂的分期付款问题。但是,我对 Anaconda 的了解不足以实现这一目标。

我的问题如下:

起点: - 我有一段用于交互式散景图的 Python 代码

所需端点: - 我想在 Anaconda Cloud 上托管代码,以便外部用户可以通过浏览器访问绘图,而无需安装 python。

我的主要问题是,目前是否有关于如何从起点到终点的简单“傻瓜”教程?

我目前对 anaconda 的理解以完全了解我必须采取哪些步骤以及我需要实现我的目标的 Anaconda/Bokeh 文档的哪些部分。

示例代码取自:

http://docs.bokeh.org/en/latest/docs/user_guide/server.html

python cloud anaconda bokeh

6
推荐指数
1
解决办法
2373
查看次数

Python:如何从mlpd3,Bokeh,Plotly中的链接画笔获取数据?

使用下面的代码,我可以获得带有4个图的2x2图.使用画笔,我可以选择一些数据点.我的问题是如何将选定的数据点作为JSON数组或cvs.此代码使用mlpd3,但散景可以使用画笔进行类似的选择.但是没有选择数据点的示例.我试图将选定的数据作为对象继续使用python进行处理.在单元格中查看数据会很高兴.

%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mat
import mpld3

mpld3.enable_notebook()


from mpld3 import plugins

fig, ax = plt.subplots(2, 2, figsize=(10, 8))
fig.subplots_adjust(hspace=0.1, wspace=0.1)
ax = ax[::-1]

X = np.random.normal(size=(2, 100))
for i in range(2):
    for j in range(2):
        ax[i, j].xaxis.set_major_formatter(plt.NullFormatter())
        ax[i, j].yaxis.set_major_formatter(plt.NullFormatter())
        points = ax[i, j].scatter(X[j], X[i])

plugins.connect(fig, plugins.LinkedBrush(points))
Run Code Online (Sandbox Code Playgroud)

Bokeh在CustomJS for Selections中具有类似的行为

http://bokeh.pydata.org/en/latest/docs/user_guide/interaction/callbacks.html#userguide-interaction-jscallbacks-customjs-interactions

无论哪一个更容易提取所选项目 - 都可行..如果有一个Plotly解决方案,那也可以.

python json plotly bokeh mpld3

6
推荐指数
1
解决办法
675
查看次数

Holoviews Hovertool 显示额外行?

我有一个数据集,我想在 X 轴上绘制具有 2 个不同变量的绘图(在 2 个不同的图中),但我想将其他值放入 Hovertool

from io import StringIO
import pandas as pd

data = """,item_id,start,station,rejects
0,item1,2019-10-14 19:00:00,assembly,4.297994269340974
1,item1,2019-10-14 19:00:00,ST1,0.20546537908362442
2,item1,2019-10-14 19:00:00,ST2,0.494539460127756
3,item1,2019-10-14 19:00:00,ST3,0.6892230576441103
4,item2,2019-10-14 23:30:00,assembly,4.432249894470241
5,item2,2019-10-14 23:30:00,ST1,0.19071837253655435
6,item2,2019-10-14 23:30:00,ST2,0.7651434643995749
7,item2,2019-10-14 23:30:00,ST3,0.7748600947051227
8,item3,2019-10-15 04:00:00,assembly,3.55576079427384
9,item3,2019-10-15 04:00:00,ST1,0.37002775208140615
10,item3,2019-10-19 04:00:00,ST2,0.7195914577530177
11,item3,2019-10-19 04:00:00,ST3,0.492379835873388
12,item4,2019-10-19 10:30:00,assembly,4.02656704026567
13,item4,2019-10-19 10:30:00,ST1,0.22926219258024177
14,item4,2019-10-19 10:30:00,ST2,0.690376569037657
15,item4,2019-10-19 10:30:00,ST3,0.838745695410320"""

data_reduced = pd.read_csv(StringIO(data), parse_dates=["start"], index_col=0)
Run Code Online (Sandbox Code Playgroud)

我想生成一个图表,其中item_idx 轴为 ,startx 轴为日期。我想跟踪每个站的废品以及装配的组合。

import holoviews as hv
import bokeh
from holoviews import opts
hv.extension('bokeh')
bokeh.plotting.output_notebook()

def plot(data_reduced, x_axis="item_id"):
    x_label …
Run Code Online (Sandbox Code Playgroud)

python holoviews

6
推荐指数
1
解决办法
1259
查看次数