class RubyvisCharts::DonutChart
Attributes
cones_colors[R]
inner_radius[R]
outer_radius[R]
percentage_key[R]
Public Class Methods
new( cones_colors: DefaultArguments::CONES_COLORS, outer_radius: DefaultArguments::OUTER_RADIUS, inner_radius: DefaultArguments::OUTER_RADIUS * 0.7, percentage_key: :percentage, **other )
click to toggle source
Calls superclass method
RubyvisCharts::AbstractChart::new
# File lib/rubyvis_charts/donut_chart.rb, line 11 def initialize( cones_colors: DefaultArguments::CONES_COLORS, outer_radius: DefaultArguments::OUTER_RADIUS, inner_radius: DefaultArguments::OUTER_RADIUS * 0.7, percentage_key: :percentage, **other ) super(other) @outer_radius = outer_radius @inner_radius = inner_radius @cones_colors = cones_colors @percentage_key = percentage_key initialize_cones! end
Private Instance Methods
initialize_cones!()
click to toggle source
# File lib/rubyvis_charts/donut_chart.rb, line 29 def initialize_cones! chart = self angle = ->(segment_hash) { segment_hash[chart.percentage_key].to_f * 2 * Math::PI } fill_style = -> { chart.cones_colors[self.index] || "##{SecureRandom.hex(3)}"} parent_layer.add(Rubyvis::Wedge) .data(values) .left(width / 2) .top(height / 2) .innerRadius(inner_radius) .outerRadius(outer_radius) .angle(angle) .fillStyle(fill_style) end