当前位置:  开发笔记 > 编程语言 > 正文

如何在Bokeh(Python)中处理图像

如何解决《如何在Bokeh(Python)中处理图像》经验,为你挑选了2个好方法。

例如,您可以使用以下代码在matplotlib中绘制图像:

%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
img=mpimg.imread('image.png')
plt.imshow(img)

Bokeh(0.10)有可能是这样的吗?



1> Luke Canavan..:

您可以使用ImageURL字形(image_url绘图方法)在本地或从Web加载图像.

from bokeh.plotting import figure, show, output_file

output_file('image.html')

p = figure(x_range=(0,1), y_range=(0,1))
p.image_url(url=['tree.png'], x=0, y=1)
show(p)

图像示例

一个问题 - 如果您只绘制图像(而不是其他数据),则必须明确设置绘图范围.

这是文档:

http://bokeh.pydata.org/en/latest/docs/reference/models/glyphs.html#bokeh.models.glyphs.ImageURL


这个示例代码不再适用于0.12.5,我试图编辑示例代码但它被拒绝了两次,你需要使用以下对image_url的调用:`p.image_url(url = ['tree.png'],x = 0,y = 0,w = 1,h = 1,anchor ="bottom_left")`

2> 小智..:

早期的答案很有帮助.但是,我想要一个没有任何附加对象的图像选项.因此,添加Bokeh版本0.12.0的答案并删除所有网格,轴和工具栏.

from bokeh.plotting import figure, curdoc
from bokeh.models import ColumnDataSource, Range1d

bosch_logo = "static/tree.jpg"
logo_src = ColumnDataSource(dict(url = [bosch_logo]))

page_logo = figure(plot_width = 500, plot_height = 500, title="")
page_logo.toolbar.logo = None
page_logo.toolbar_location = None
page_logo.x_range=Range1d(start=0, end=1)
page_logo.y_range=Range1d(start=0, end=1)
page_logo.xaxis.visible = None
page_logo.yaxis.visible = None
page_logo.xgrid.grid_line_color = None
page_logo.ygrid.grid_line_color = None
page_logo.image_url(url='url', x=0.05, y = 0.85, h=0.7, w=0.9, source=logo_src)
page_logo.outline_line_alpha = 0 
curdoc().add_root(page_logo)


``figure''是一个便利函数,它返回一个``bokeh.models.Plot''实例,并在其上设置了所有轴/网格/工具。或者,您可以实例化一个裸露的“ Plot”对象并将图像添加到该对象(避免所有的减法操作)
推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有