как отобразить гуглчарт в ruby? - PullRequest
1 голос
/ 11 декабря 2010

Мне было интересно, как отобразить диаграмму, созданную с помощью gchartrb, в ruby.Я попытался сделать это, просто потребовав картинку из указанного URL, но это выдает ошибку «Плохой URI».как мне это сделать?спасибо

require 'rubygems'
require 'google_chart'





# Pie Chart
GoogleChart::PieChart.new('320x200', "Pie Chart",false) do |pc|
  pc.data "Apples", 40
  pc.data "Banana", 20
  pc.data "Peach", 30
  pc.data "darn", 600

  $chart = pc.to_url

end

require 'fox16'

include Fox

class Image_Viewer <FXMainWindow
  def initialize(app)
    super(app, "Image Viewer", :opts => DECOR_ALL, :width => 500, :height => 450)
    require 'open-uri'
    @pic = Kernel.open($chart, "rb")
    @pic2 = FXPNGImage.new(app, @pic.read)
    FXImageFrame.new(self, @pic2)

end
  def create
    super
    self.show(PLACEMENT_SCREEN)
end

end


app = FXApp.new
mainwin = Image_Viewer.new(app)

app.create
app.run

1 Ответ

0 голосов
/ 12 декабря 2010

Может показаться, что URI::parse не нравится URL, созданный Google (вероятно, из-за использования |). Поэтому закодируйте его перед использованием:

@pic = Kernel.open(URI::encode($chart))
...