0.0
No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
Chart Candy use D3.js library to quickly render AJAX charts in your Rails project. In a minimum amount of code, you should have a functional chart, styled and good to go.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

>= 0.8.7
>= 2.0

Runtime

 Project Readme

Chart Candy

Chart Candy use D3.js library to quickly render AJAX charts in your Rails project. In a minimum amount of code, you should have a functional chart, styled and good to go.

Install

gem install chart-candy

Rails 3

In your Gemfile:

gem 'chart-candy'

Setup

First you need to link the assets.

In your css manifest put : require chart_candy

In your javascript manifest put : require chart_candy

In your layout you must link the D3.js library. You can use the following helper method in order to do that.

<%= d3_include_tag %>

Usage

Now, you're ready to add some charts to your project! Chart Candy currently offer 3 chart types : line, donut and counter.

Line Chart

Data generation

You must create a class that will build the JSON data for the chart. We suggest to create a app/charts directory in your Rails project to hold all your charts. For example, if I want the chart of downloaded books, I would create app/charts/downloaded_books_chart.rb.

class DownloadedBooksChart < ChartCandy::BaseChart
  def build(chart)
    downloads = [ {"time"=>Time.now - 4.months, "value"=>69}, {"time"=>Time.now - 3.months, "value"=>74}, {"time"=>Time.now - 2.months, "value"=>83}, {"time"=>Time.now - 1.months, "value"=>84} ]

    chart.add_x_axis :date, downloads
    chart.add_y_axis :number, downloads

    chart.add_line 'downloads', downloads
  end
end

This build method will be call by the AJAX chart.

Chart rendering

In your view, you call the chart.

<%= line_chart 'downloaded-book' %>

Labelling

Chart Candy use Rails I18n to manage text. In order to manage the labels on the chart you'll have to create a YAML that looks like that :

fr:
  chart_candy:
    downloaded_books:
      title: "Downloaded Books from my Library"

      axis:
        x:
          label: "Period"
        y:
          label: "Quantity"
      lines:
        downloads:
          label: "Quantity of downloads"
          unit: "downloads"

Donut Chart

Coming Soon

Counter

Coming Soon

Copyright

Copyright (c) 2012 De Marque inc. See LICENSE for further details.DownloadedBooks