小编szx*_*zxk的帖子

面向对象的散景的多个问题[OBSOLETE]




注意:此问题涉及"第一代"Bokeh服务器,该服务器已被弃用和删除多年.此问题或其答案中的任何内容均与任何版本的Bokeh> = 0.11无关

有关使用现代支持的Bokeh服务器的详细信息,请参阅"用户指南"中的" 运行散热服务器"一章.




我正在尝试了解Bokeh是否正在构建一个交互式应用程序.我正在查看Bokeh示例,我发现大多数示例都是在全局命名空间中编写的,但是"app"子目录中的那些示例是以一种漂亮的,面向对象的方式编写的,其中主类是固有的来自像HBox这样的Property类.

这将是一个混乱的问题,因为我不认为这种编程Bokeh的方式有很好的记录.我遇到的第一件事是除非我包括,否则情节不会画出来extra_generated_classes.

  1. extra_generated_classes做什么?

    其次,看起来事件循环setup_events在启动之前调用,create并且随后每次触发事件时调用.

  2. 为什么每次触发事件时setup_events都需要注册回调?为什么它不会在第一次尝试注册之前等待创建完成?

    我不确定的最后一件事是如何在这里强制重绘一个雕文.滑块演示适用于我,我试图基本上做同样的事情,除了散点图而不是线.

    我在我的最后设置了一个pdb跟踪update_data,我可以保证self.source匹配,self.plot.renderers[-1].data_source并且它们都从一开始就进行了调整.但是,self.plot它本身并没有改变.

  3. 什么是面向对象的方法相当于调用store_objects来更新绘图?

    我对第三个问题特别困惑,因为它看起来不像sliders_app示例需要这样的东西.为了澄清,我正在尝试制作可变数量的小部件/滑块,所以这就是我的代码:

类属性:

extra_generated_classes = [['ScatterBias', 'ScatterBias', 'HBox']]
maxval = 100.0

inputs = Instance(bkw.VBoxForm)
outputs = Instance(bkw.VBoxForm)
plots = Dict(String, Instance(Plot))
source = Instance(ColumnDataSource)


cols = Dict(String, String)
widgets = Dict(String, Instance(bkw.Slider))
# unmodified source
df0 = Instance(ColumnDataSource)
Run Code Online (Sandbox Code Playgroud)

初始化方法

@classmethod
def create(cls):
    obj = cls()

    ##############################
    ## load DataFrame …
Run Code Online (Sandbox Code Playgroud)

python bokeh

31
推荐指数
1
解决办法
1830
查看次数

Automap使用sqlalchemy反映postgres模式中的表

我正在使用sqlalchemy文档来反映数据库表automap:http://docs.sqlalchemy.org/en/latest/orm/extensions/automap.html#generating-mappings-from-an-existing-metadata.

当我没有特定的模式,Postgres使用默认public模式时,这按预期工作,我找到我的表的名称:

>>> m = MetaData()
>>> b = automap_base(bind=engine, metadata=m)
>>> b.prepare(engine, reflect=True)
>>> b.classes.keys()
['ads', 'spatial_ref_sys', 'income']
Run Code Online (Sandbox Code Playgroud)

但是当我特定一个显式模式时,我再也无法访问这些表Base.classes了.

>>> m = MetaData(schema='geography')
>>> b = automap_base(bind=engine, metadata=m)
>>> b.prepare(engine, reflect=True)
>>> b.classes.keys()
[]
Run Code Online (Sandbox Code Playgroud)

MetaData虽然反映正确:

>>> b.metadata.tables
immutabledict({geography.usa_cbsa_centroids': Table('usa_cbsa_centroids', MetaData(bind=Engine(postgresql://asteroids:***@localhost:5432/asteroids)), Column('GEOID', VARCHAR(length=5), table=<u
sa_cbsa_centroids>, nullable=False), ...})
Run Code Online (Sandbox Code Playgroud)

请注意,表和列仅在运行时已知.

postgresql sqlalchemy psycopg2

9
推荐指数
1
解决办法
3094
查看次数

在单个交换语句中更新Clojure原子的多个元素?

我有一个原子,它有两个部分.

(def thing (atom {:queue '() :map {}}))
Run Code Online (Sandbox Code Playgroud)

我想更新:queue和:map在一个原子笔划中,以防止它们脱离同步.

单独排队:

(swap! thing update-in [:queue] (list 1))
Run Code Online (Sandbox Code Playgroud)

(从这个问题:如何附加到Clojure原子中的嵌套列表?)

单独地图:

(swap! thing assoc-in [:map 1] (:key :value))
Run Code Online (Sandbox Code Playgroud)

(从这个问题:在Clojure原子中使用swap到MERGE(追加)嵌套映射?)

如何在单个交换语句中执行这些操作?(假设这会阻止他们脱离同步?)

clojure

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

使用swap到MERGE(追加)Clojure原子中的嵌套映射?

假设我有一个包含这样的地图的原子:

{:count 0 :map hash-map}
Run Code Online (Sandbox Code Playgroud)

如何使用swap将另一个键值对合并到:map

clojure

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

同时使用&#38; 和amp; 在KML中表示&符号?

我正在查看芝加哥开放数据门户网站的公交车站列表,我看到他们已经双倍地逃过了他们的&符号,但并非全部.换句话说,他们有时将他们的&符号编码为& amp;和有时只是& amp;

我注意到的模式是它们在描述字段内双重转义&符号,它们是KML文档本身内部的完全成熟的HTML文档.

有没有人对此有任何见解?这是城市数据中的错误吗?它也无法在Google地球中正确呈现.

kml

5
推荐指数
1
解决办法
662
查看次数

如何附加到Clojure原子中的嵌套列表?

我想将值附加到Clojure原子中的列表:

(def thing (atom {:queue '()}))
Run Code Online (Sandbox Code Playgroud)

我知道当它不是原子时,我可以这样做:

(concat '(1 2) '(3))
Run Code Online (Sandbox Code Playgroud)

我怎样才能将其翻译成交换!命令?

注意:我问了一个涉及地图的类似问题:在Clojure原子中使用swap到MERGE(追加)嵌套地图?

clojure

4
推荐指数
1
解决办法
1083
查看次数

GET变量名称包含破折号为NodeJS Express的req.query创建问题?

我正在创建一个GET端点,使用Express在Node.js中处理这个变量:

?message-timestamp=2012-08-19+20%3A38%3A23
Run Code Online (Sandbox Code Playgroud)

我无法使用req.query访问它.访问req.query.message-timestamp会引发错误("ReferenceError:timestamp is not defined").显然,破折号并不好看.

有什么明显的方法吗?

javascript node.js express

4
推荐指数
1
解决办法
3083
查看次数

更改 Clojure/Leiningen 项目中的测试目录

我创建了一个新的 Clojurescript/Om 项目。目录结构如下所示:

??? project.clj
??? resources
?   ??? public
?       ??? index.html
?       ??? src
?           ??? om_tutorial
?               ??? core.cljs
??? script
?   ??? figwheel.clj
??? src
?   ??? clj
?   ?   ??? test
?   ?   ??? example-project
?   ?       ??? core.clj
?   ??? cljs
?       ??? example-project
?           ??? core.cljs
??? target
?   ??? classes
?   ?   ??? META-INF
?   ?       ??? maven
?   ?           ??? typing
?   ?               ??? typing
?   ?                   ??? pom.properties
?   ??? …
Run Code Online (Sandbox Code Playgroud)

clojure leiningen clojurescript

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

Dokku 与 SQLite?

我在别处读到 Dokku 不支持 SQLite。为什么不?我正在使用带有 SQLAlchemy 的 Flask 应用程序,这似乎是所有抽象发生的地方。我不能将 sqlite 数据库文件放在磁盘上的某个位置(/home/dokku/database/my_db,也许?)并将其提供给 SQLAlchemy?

engine = create_engine('sqlite://///home/dokku/database/my_db')
Run Code Online (Sandbox Code Playgroud)

更具体地说,我会使用 Dokku 将该字符串存储为环境变量,而不是直接将其传入。

为什么这行不通?

sqlite sqlalchemy flask-sqlalchemy digital-ocean dokku

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