public
Description: The ruby on rails plugin for teethgrinder's Open Flash Chart (version 2)
Homepage: http://pullmonkey.com/projects/open_flash_chart2/
Clone URL: git://github.com/pullmonkey/open_flash_chart.git
pullmonkey (author)
Mon Apr 13 10:16:34 -0700 2009
commit  f5efa73e1c793339f9d72fb4ee1ce78398cca260
tree    0bf9ccaf6187a51fa739fc83259b98ebca14dc55
parent  6a20bd5e9d55a75c4da81bb26e2335e192da8c1a
name age message
file MIT-LICENSE Thu Jul 24 08:48:52 -0700 2008 Initial commit [pullmonkey]
file README Loading commit data...
file Rakefile Thu Jul 24 08:48:52 -0700 2008 Initial commit [pullmonkey]
directory assets/ Mon Apr 13 09:53:31 -0700 2009 make it lean [pullmonkey]
file init.rb
file install.rb Mon Apr 13 09:53:31 -0700 2009 make it lean [pullmonkey]
directory lib/
directory test/ Fri Nov 07 10:40:19 -0800 2008 remove test app to separate it from the plugin [harryseldon]
file uninstall.rb Thu Jul 24 08:48:52 -0700 2008 Initial commit [pullmonkey]
README
OpenFlashChart  Version 2.0.0  11/14/2008 
==============

1) rails ofc2_test_app
2) cd ofc2_test_app
3) script/plugin install git://github.com/pullmonkey/open_flash_chart.git
4) script/generate controller test_it

5) Add the following to the test_it_controller.rb in RAILS_ROOT/app/controllers:
class TestItController < ApplicationController
  
  def index
    respond_to do |wants|
      wants.html {
        @graph = open_flash_chart_object( 600, 300, url_for( :action => 'index', :format => :json ) )
      }
      wants.json { 
        chart = OpenFlashChart.new( "MY TITLE" ) do |c|
          c << BarGlass.new( :values => (1..10).sort_by{rand} )
        end
        render :text => chart, :layout => false
      }
    end
  end

end

6) Add the following to index.html.erb in RAILS_ROOT/app/views/test_it/:
<html>
<head>
  <script type="text/javascript" src="/javascripts/swfobject.js"></script>
</head>
<body>
<%= @graph %>
</body>
</html>

7) script/server
8) Let me know how it goes, thanks.


Example
=======

# GOT THIS WORKING JSON wise ... haven't really tested too much further
data = []

for i in (0..31)
  data << Math.sin(i * 0.2) * 1.9
end

chart = OpenFlashChart::OpenFlashChart.new
chart.title = OpenFlashChart::Title.new(:text => 'Area Chart')

area = OpenFlashChart::Area.new
area.width = 2
area.dot_style = OpenFlashChart::HollowDot.new
area.colour = '#838A96'
area.fill = '#E01B49'
area.fill_alpha = 0.4
area.values = data

chart.elements = []
chart.elements << area

y_axis = OpenFlashChart::YAxis.new
y_axis.min = -2
y_axis.max = 2
y_axis.steps = 2

y_axis.labels = nil

y_axis.offset = 0

x_axis = OpenFlashChart::XAxis.new
x_axis.labels = data
x_axis.steps = 2

x_labels = OpenFlashChart::XAxisLables.new
x_labels.steps = 4
x_labels.rotate = 270

x_axis.labels = x_labels

chart.y_axis = y_axis
chart.x_axis = x_axis

puts chart.render


Example above and more to follow here - http://www.pullmonkey.com/projects/open_flash_chart


Copyright (c) 2008 PullMonkey, released under the MIT license