我如何在散景 (Python) 中处理图像

新手上路,请多包涵

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

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

Bokeh(0.10) 可以实现这样的功能吗?

原文由 Trevor McCormick 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 463
2 个回答

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

 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, w=0.8, h=0.6)
## could also leave out keywords
# p.image_url(['tree.png'], 0, 1, 0.8, h=0.6)
show(p)

图片示例

一个陷阱 - 如果您只绘制图像(没有其他数据),则必须明确设置绘图范围。

这是文档:

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

原文由 Luke Canavan 发布,翻译遵循 CC BY-SA 4.0 许可协议

较早的答案很有帮助。但是,我想要一个没有任何附加对象的仅图像选项。因此,添加了 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)

原文由 Jayant 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题