- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试修改 Bokeh 库图中的代码。它的链接是 here 。
我的目标是为绘图提供不同的 y 尺度。我编辑了 make_plot 函数,而是复制该函数的内容来尝试制作第二个(右上)图,使用 x 和 y2 列而不是用于第一个(左上)图。
我到目前为止:
from __future__ import print_function
import numpy as np
import pandas as pd
from bokeh.util.browser import view
from bokeh.document import Document
from bokeh.embed import file_html
from bokeh.layouts import column, gridplot
from bokeh.models import Circle, ColumnDataSource, Div, Grid, Line, LinearAxis, Plot, Range1d
from bokeh.resources import INLINE
raw_columns=[
[176.232, 2.212975, 176.232, 14088.2, 10.0, 7.46, 8.0, 6.58],
[177.487, 2.212190, 177.487, 14080.6, 8.0, 6.77, 8.0, 5.76],
[178.743, 2.211719, 178.743, 14057.6, 13.0, 12.74, 8.0, 7.71],
[180, 2.211562, 180, 14019.3, 7.11, 8.0, 8.84],
[181.257, 2.211719, 181.257, 14080.6, 11.0, 7.81, 8.0, 8.47],
[182.513, 2.212190, 182.513, 14057.6, 14.0, 8.84, 8.0, 7.04],
[183.768, 2.212975, 183.768, 14019.3, 5.0, 5.73, 8.0, 6.89]]
df = pd.DataFrame(data=raw_columns, columns=
['Ix','Iy','IIx','IIy','IIIx','IIIy','IVx','IVy'])
circles_source = ColumnDataSource(
data = dict(
xi = df['Ix'],
yi = df['Iy'],
xii = df['IIx'],
yii = df['IIy'],
xiii = df['IIIx'],
yiii = df['IIIy'],
xiv = df['IVx'],
yiv = df['IVy'],
)
)
x = np.linspace(176, 184, 100)
x1column = df['Ix'].values
y1column = df['Iy'].values
#y = 0.0000995532*x**2 - 0.0358391636*x + 5.4370863900
z = np.polyfit(x1column,y1column,2)
y = z[0]*x**2 + z[1]*x +z[2]
lines_source = ColumnDataSource(data=dict(x=x, y=y))
xdr = Range1d(start=176, end=184)
ydr = Range1d(start=2.2115, end=2.2135)
x2dr = Range1d(start=-0.12, end=0.12)
y2dr = Range1d(start=14000, end=14100)
x2column = df['IIx'].values
y2column = df['IIy'].values
z2 = np.polyfit(x1column,y2column,2)
y2 = z2[0]*x**2 + z2[1]*x +z2[2]
def make_plot(title, xname, yname):
plot = Plot(x_range=xdr, y_range=ydr, plot_width=400, plot_height=400,
background_fill_color='#efefef')
plot.title.text = title
xaxis = LinearAxis(axis_line_color=None)
plot.add_layout(xaxis, 'below')
yaxis = LinearAxis(axis_line_color=None)
plot.add_layout(yaxis, 'left')
plot.add_layout(Grid(dimension=0, ticker=xaxis.ticker))
plot.add_layout(Grid(dimension=1, ticker=yaxis.ticker))
line = Line(x='x', y='y', line_color="#666699", line_width=2)
plot.add_glyph(lines_source, line)
circle = Circle(
x=xname, y=yname, size=12,
fill_color="#cc6633", line_color="#cc6633", fill_alpha=0.5
)
plot.add_glyph(circles_source, circle)
return plot
#where will this comment show up
I = make_plot('I', 'xi', 'yi')
#playing around starts here
plot = Plot(x_range=x2dr, y_range=y2dr, plot_width=400, plot_height=400,
background_fill_color='#efefef')
plot.title.text = 'd-d transition'
xaxis = LinearAxis(axis_line_color=None)
plot.add_layout(xaxis, 'below')
yaxis = LinearAxis(axis_line_color=None)
plot.add_layout(yaxis, 'left')
plot.add_layout(Grid(dimension=0, ticker=xaxis.ticker))
plot.add_layout(Grid(dimension=1, ticker=yaxis.ticker))
lines_source = ColumnDataSource(data=dict(x=x, y=y2))
line = Line(x='x', y='y2', line_color="#666699", line_width=2)
plot.add_glyph(lines_source, line)
circle = Circle(
x='xii', y='yii', size=12,
fill_color="#cc6633", line_color="#cc6633", fill_alpha=0.5
)
plot.add_glyph(circles_source, circle)
II = plot
#playing around ends here
#II = make_plot('II', 'xii', 'yii')
III = make_plot('III', 'xiii', 'yiii')
IV = make_plot('IV', 'xiv', 'yiv')
grid = gridplot([[I, II], [III, IV]], toolbar_location=None)
div = Div(text="""
<h1>Anscombe's Quartet</h1>
<p>Anscombe's quartet is a collection of four small datasets that have nearly
identical simple descriptive statistics (mean, variance, correlation, and linear
regression lines), yet appear very different when graphed.
</p>
""")
doc = Document()
doc.add_root(column(div, grid, sizing_mode="scale_width"))
if __name__ == "__main__":
doc.validate()
filename = "anscombe.html"
with open(filename, "w") as f:
f.write(file_html(doc, INLINE, "Anscombe's Quartet"))
print("Wrote %s" % filename)
view(filename)
ERROR:bokeh.core.validation.check:E-1001 (BAD_COLUMN_NAME): Glyph refers to nonexistent column name. This could either be due to a misspelling or typo, or due to an expected column being missing. : key "y" value "y2" (closest match: "y") [renderer: GlyphRenderer(id='14758', ...)]
ERROR:bokeh.core.validation.check:E-1001 (BAD_COLUMN_NAME): Glyph refers to nonexistent column name. This could either be due to a misspelling or typo, or due to an expected column being missing. : key "y" value "y2" (closest match: "y") [renderer: GlyphRenderer(id='14758', ...)]
如果知道有帮助的话:我尝试用“y”替换“y2”,并且脚本运行没有错误,但右上角的图是空白的。
这个错误看起来很容易修复,但我无法解决它。
最佳答案
设置为'y'
是正确的做法。传递到字形的名称映射到数据源中的列名称,并且数据源中没有“y2”列。绘图为空白的原因是您的 x 坐标超出了您设置的显式视口(viewport)范围:
(base) ❯ python test.py
min x = 176.0, max x = 184.0
Wrote anscombe.html
相比之下,您设置的绘图的 x 范围是从 x2dr.start = -0.12
到 x2dr.end = 0.12
。因此,所有数据都离屏幕很远。您可以调整绘图边界或调整 x 坐标。我不知道什么适合您的用例,所以我无法就此事提供建议。
作为一个温和有用的提示,出现问题时快速查看数据几乎总是一个好主意。添加一条打印语句来显示 x 最大/最小值立即发现了该问题。
关于python - (BAD_COLUMN_NAME) : Glyph refers to nonexistent column name, Bokeh ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57390435/
我正在使用Docker代理编写我的第一个Jenkins管道。执行管道时,在Run Docker Image阶段的日志中出现以下错误(请注意,为清楚起见已删除了管道步骤): sh: can't crea
我正在遍历一组简单(JSON 样式)对象,其中一些具有给定属性,而另一些则没有。如果它们具有该属性,可以安全地假设它永远不会计算为假值。 var objs = [ {'a': 1, 'b':
此段出自书JavaScript: The Definitive Guide, 6th edition , 第 58 页: When any identifier appears by itself i
我正在尝试使用 mutt 从命令行运行我的电子邮件。我一直在尝试遵循这两个指南:http://blog.developwithpassion.com/2013/05/02/getting-up-and
所以,这个查询: mysql_query("UPDATE item SET name = 'foo' WHERE name = 'bar'"); 返回 1,但表中不存在值“bar”。正如预期的那样,数
我有一个 PHP 脚本创建一个 MySQL 转储,从浏览器启动时运行良好。它通过 exec() 函数调用 mysqldump。 我将此 PHP 脚本安排为 根在 crontab 中(在 Ubuntu
我有几个已完成的 AMS(Azure 媒体服务)作业,但与原始视频 Assets 无关。这些 Assets 称为“不存在的 Assets ”。 为什么要创建这样的 Assets ?我该如何照顾他们?
我有几个已完成的 AMS(Azure 媒体服务)作业,但与原始视频 Assets 无关。这些 Assets 称为“不存在的 Assets ”。 为什么要创建这样的 Assets ?我该如何照顾他们?
我下载了 VLFeat lib 从它的 git 存储库!我按照 installation 中的说明进行操作页。但是当我运行 vl_setup 命令时,我收到了这个警告: 警告:名称不存在或不是目录:.
我正在尝试克隆一个存储库,但不能。这是我得到的: username@dev:~$ sudo git clone username@localhost:reponame reponame Initial
我可以在命令行上运行这个循环: for /f "tokens=2" %i in ('arp -a ^| Find/i "dynamic"') do echo %i 但是如果我运行同一个 bat 文件,
我正在尝试修改 Bokeh 库图中的代码。它的链接是 here 。 我的目标是为绘图提供不同的 y 尺度。我编辑了 make_plot 函数,而是复制该函数的内容来尝试制作第二个(右上)图,使用 x
我是 Casperjs 的新手,我试图让这个脚本复制一些文本,但即使我有正确的路径,它也无法找到搜索按钮。我之前能够单击脚本中的所有按钮,但它在该行给出了错误: casper.wait(200
我面临与此 thread 中相同的问题.当我使用 make html 构建我的 Sphinx 文档时,我收到了很多这样的警告 None:None: WARNING: toctree contains
根据文档,docker volumes 有一个“inmemory”驱动程序: https://docs.docker.com/registry/storage-drivers/inmemory/ Fo
我正在尝试使用 Sphinx 为大型 python 代码库自动创建 api 文档。 我尝试过使用 build_modules.py 和 sphinx-apidoc。使用任何一个,我都可以在我的输出目录
几天前我开始使用 Sphinx 来记录一个 python 包,我得到了一个似乎很常见的错误,但我找不到解决方案。 我使用 sphinx-quickstart 来设置所有内容。我使用“doc/”作为文档
考虑这个模型定义和用法: from django.db import models class User(models.Model): name: str = models.CharField
我在尝试编写显示大文件前 5 行的程序时遇到错误。 C:\blah\aeea2>for /L %f in (1,1,500) do @echo zzzzzzzzzzzzzzzzzzzzzzzzzzzz
我在尝试编写显示大文件前 5 行的程序时遇到错误。 C:\blah\aeea2>for /L %f in (1,1,500) do @echo zzzzzzzzzzzzzzzzzzzzzzzzzzzz
我是一名优秀的程序员,十分优秀!