Sha256: 1579241da86bc6fd5ad9f175591c7cb24ed30ff2b7a21265fb45c28bfad65a7d

Contents?: true

Size: 1.59 KB

Versions: 5

Compression:

Stored size: 1.59 KB

Contents

# -*- coding: utf-8 -*-

class RailsDataExplorer

  # Responsibilities:
  #  * Visualize data
  #  * Integrate with front end visualization libraries
  #
  # Collaborators:
  #  * RdeTable
  #
  class Chart

    include ActionView::Helpers::NumberHelper
    attr_accessor :output_buffer # required for content_tag
    include ActionView::Helpers::TagHelper

    def dom_id
      "rde-chart-#{ object_id }"
    end

    # Returns true if this chart will be rendered. Sometimes we can't make that
    # decision until render time. Override this method in sub classes, e.g.,
    # to avoid rendering ParallelCoordinates when all data series are categorical.
    def render?
      true
    end

  protected

    # Renders an HTML table
    # @param rde_table [RdeTable]
    def render_html_table(rde_table)
      content_tag(:table, class: 'table rde-table') do
        rde_table.rows.map { |row|
          content_tag(row.tag, class: row.css_class) do
            row.cells.map { |cell|
              if cell.ruby_formatter
                content_tag(
                  cell.tag,
                  instance_exec(cell.value, &cell.ruby_formatter),
                  class: cell.css_class,
                  title: cell.title,
                  style: cell.style,
                )
              else
                content_tag(
                  cell.tag,
                  cell.value,
                  class: cell.css_class,
                  title: cell.title,
                  style: cell.style,
                )
              end
            }.join.html_safe
          end
        }.join.html_safe
      end
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rails-data-explorer-1.0.4 lib/rails_data_explorer/chart.rb
rails-data-explorer-1.0.3 lib/rails_data_explorer/chart.rb
rails-data-explorer-1.0.2 lib/rails_data_explorer/chart.rb
rails-data-explorer-1.0.1 lib/rails_data_explorer/chart.rb
rails-data-explorer-1.0.0 lib/rails_data_explorer/chart.rb