class Spout::Models::Graphables::NumericVsChoices
Public Instance Methods
categories()
click to toggle source
# File lib/spout/models/graphables/numeric_vs_choices.rb, line 9 def categories categories_result = [] @stratification_variable.domain.options.each do |option| visit_subjects = @subjects.select{ |s| s._visit == option.value and s.send(@variable.id) != nil } rescue visit_subjects = [] if visit_subjects.count > 0 categories_result << option.display_name end end categories_result end
series()
click to toggle source
# File lib/spout/models/graphables/numeric_vs_choices.rb, line 24 def series data = [] @stratification_variable.domain.options.each do |option| visit_subjects = @subjects.select{ |s| s._visit == option.value and s.send(@variable.id) != nil } rescue visit_subjects = [] if visit_subjects.count > 0 filtered_domain_options(@chart_variable).each_with_index do |filtered_option, index| values = visit_subjects.select{|s| s.send(@chart_variable.id) == filtered_option.value }.collect(&@variable.id.to_sym) data[index] ||= [] data[index] << (values.mean.round(2) rescue 0.0) end end end filtered_domain_options(@chart_variable).each_with_index.collect do |option, index| { name: option.display_name, data: data[index] } end end
units()
click to toggle source
# File lib/spout/models/graphables/numeric_vs_choices.rb, line 20 def units @variable.units end