Sha256: 421fd035a765712184f86ba94e1c37ba56ed3ff08b835b1378b430838ae912b3
Contents?: true
Size: 1.63 KB
Versions: 92
Compression:
Stored size: 1.63 KB
Contents
- title ||= nil - id ||= title || ("scatter-" << (1000 * rand).to_i.to_s) - title ||= "Scatter Plot" - if data.fields.length == 1 - y ||= data.fields.first - x_values = Hash[*data.keys.zip((0..data.length-1).to_a).flatten] - size_values = Hash[*data.keys.zip([1] * data.length).flatten] - if data.fields.length == 2 - x ||= data.fields.first - y ||= data.fields.last - size_values = Hash[*data.keys.zip([1] * data.length).flatten] - if data.fields.length == 3 - x ||= data.fields.first - y ||= data.fields[1] - size ||= data.fields.last - size_values = Hash[*data.keys.zip([1] * data.length).flatten] - data_values = [] - data.through do |key,values| - label = key.respond_to?(:name)? key.name || key : key - y_value = (defined?(y) and y) ? values[y] : y_values[y].to_f - x_value = (defined?(x) and x) ? values[x] : x_values[key].to_f - size_value = (defined?(size) and size) ? values[size] : size_values[key].to_f - data_values << {:label => label, :x => x_value, :y => y_value, :size => size_value} - plot_data = [{:key => "Group", :values => data_values}] :ruby setup =<<-EOF var graph = nv.models.scatterChart() .showDistX(true) .showDistY(true) .useVoronoi(true) .color(d3.scale.category10().range()) graph.xAxis.tickFormat(d3.format('.02f')) graph.yAxis.tickFormat(d3.format('.02f')) graph.tooltip.enabled(true) graph.tooltip.contentGenerator(function(obj) { return '<h2>' + obj.point.label + '</h2>'; }); EOF = partial_render('tools/nvd3/chart', locals.merge(:plot_data => plot_data, :id => id, :resolution => resolution, :setup => setup))
Version data entries
92 entries across 92 versions & 1 rubygems