是否有在 ruby 中使用 matplotlib.image 的等价物
Posted
技术标签:
【中文标题】是否有在 ruby 中使用 matplotlib.image 的等价物【英文标题】:Is there an equivalent for using matplotlib.image in ruby 【发布时间】:2018-08-26 00:27:16 【问题描述】:一直在尝试在 jupyter notebook 中使用 Ruby。使用 Python 我可以做到这一点
import matplotlib.image as mpimg
有谁知道 Ruby 的等价物,我在任何 iRuby 或 sciruby 文档中都找不到它?
澄清一下,在我的 gemfile 中有这个
gem 'iruby'
gem 'cztop'
gem 'matplotlib'
但似乎无法访问我习惯在 python 中使用的matplotlib
的image
部分。
我正在尝试在 Python 中找到我会这样写的 Ruby 版本
#importing some useful packages
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
...
%matplotlib inline
#reading in an image
image = mpimg.imread('test_images/solidWhiteRight.jpg')
#printing out some stats and plotting
print('This image is:', type(image), 'with dimesions:', image.shape)
plt.imshow(image) #call as plt.imshow(gray, cmap='gray') to show a grayscaled image
非常感谢您的任何建议
【问题讨论】:
当然我知道这些是如何有用的,我的问题是更大的范围,我找不到任何方法来访问我需要的库,因为它甚至不存在于 ruby 环境中,我很好奇我是如何得到的它在 Ruby 中,或者如果它存在于 Ruby 版本中。 不,AFAIK 它在 Ruby 版本中不存在。在不确切说明您需要什么的情况下,我可能会建议 mini_magick(iRuby 应该已经支持),或者 chunky_png(您可以使用IRuby.display png.to_blob, mime: "image/png"
将图像从它放入 iRuby)。
【参考方案1】:
这是我可以让它在 MacOSX 上的 jupyter notebook 中工作的程度:
require 'matplotlib/pyplot'
plt = Matplotlib::Pyplot
image = plt.imread 'test.png'
puts "This image's dimensions: #image.shape"
plt.imshow(image)
plt.show()
我将您的 Gemfile 与额外的 gem rbczmq
一起使用以避免内核死机(发现提示 here):
gem 'iruby'
gem 'cztop'
gem 'matplotlib'
gem 'rbczmq'
请注意,我使用了 .png,因为 matplotlib 只能在未安装 PIL 的情况下原生读取 PNG。
结果如下所示:
显示结果 inline 与 python 版本一样:
似乎是不可能的。
【讨论】:
它真的向您显示了图像吗?我的打印尺寸但在使用您的代码时不显示图像。plt.imshow(image)
应该在尺寸下显示图像。
plt.imshow(image)
不显示渲染结果,你必须显式调用plt.show()
。
对不起,在那里输入了错误的代码,5 分钟后无法编辑。我尝试了确切的东西但没有用,我正在尝试安装一些东西,看看我能不能得到它
好吧,我需要通过在笔记本中显示内联(理想情况下)来工作,或者至少通过运行文件来工作。但我根本无法让它显示任何东西。以上是关于是否有在 ruby 中使用 matplotlib.image 的等价物的主要内容,如果未能解决你的问题,请参考以下文章
是否有在 PayPal 的 iPhone 框架中启用定期付款的选项?