Sha256: 76a6ea46a834aca37ef7689968d5acd5269059be7dec7ace79ceed5736aceeae
Contents?: true
Size: 1.5 KB
Versions: 2
Compression:
Stored size: 1.5 KB
Contents
# frozen_string_literal: true require 'spout/models/graphables/default' module Spout module Models module Graphables class NumericVsChoices < Spout::Models::Graphables::Default 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 def units @variable.units end 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 |option, index| values = visit_subjects.select{|s| s.send(@chart_variable.id) == 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 end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
spout-0.12.0.beta1 | lib/spout/models/graphables/numeric_vs_choices.rb |
spout-0.11.1 | lib/spout/models/graphables/numeric_vs_choices.rb |