require 'daru/view' Daru::View.plotting_library = :googlecharts data = [ ['Task', 'Hours per Day'], ['Work', 11], ['Eat', 2], ['Commute', 2], ['Watch TV', 2], ['Sleep', 7] ] pie_chart_table = Daru::View::Table.new(data) pie_chart_table.show_in_iruby pie_chart_options = { type: :pie, height: 400, title: 'My Daily Activities' } pie_chart_chart = Daru::View::Plot.new(pie_chart_table.table, pie_chart_options) pie_chart_chart.show_in_iruby pie_chart3D_options = { type: :pie, height: 400, title: 'My Daily Activities', is3D: true } pie_chart3D = Daru::View::Plot.new(pie_chart_table.table, pie_chart3D_options) pie_chart3D.show_in_iruby pie_chart_dount_options = { type: :pie, height: 400, title: 'My Daily Activities',pieHole: 0.4, } pie_chart_dount = Daru::View::Plot.new(pie_chart_table.table, pie_chart_dount_options) pie_chart_dount.show_in_iruby pie_chart_dount_options = { type: :pie, height: 400, title: 'My Daily Activities',pieHole: 0.5, pieSliceTextStyle: { color: 'black', }, legend: 'none' } pie_chart_dount = Daru::View::Plot.new(pie_chart_table.table, pie_chart_dount_options) pie_chart_dount.show_in_iruby data = [ ['Language', 'Speakers (in millions)'], ['German', 5.85], ['French', 1.66], ['Italian', 0.316], ['Romansh', 0.0791] ] pie_chart_rotate_table = Daru::View::Table.new(data) pie_chart_rotate_table.show_in_iruby pie_chart_rotate_options = { type: :pie, height: 500 } pie_chart_rotate_dount = Daru::View::Plot.new(pie_chart_rotate_table.table, pie_chart_rotate_options) pie_chart_rotate_dount.show_in_iruby pie_chart_rotate_options = { legend: 'none', pieSliceText: 'label', title: 'Swiss Language Use (100 degree rotation)', pieStartAngle: 100,type: :pie, height: 500 } pie_chart_rotate_dount = Daru::View::Plot.new(pie_chart_rotate_table.table, pie_chart_rotate_options) pie_chart_rotate_dount.show_in_iruby data = [ ['Language', 'Speakers (in millions)'], ['Assamese', 13], ['Bengali', 83], ['Bodo', 1.4], ['Dogri', 2.3], ['Gujarati', 46], ['Hindi', 300], ['Kannada', 38], ['Kashmiri', 5.5], ['Konkani', 5], ['Maithili', 20], ['Malayalam', 33], ['Manipuri', 1.5], ['Marathi', 72], ['Nepali', 2.9], ['Oriya', 33], ['Punjabi', 29], ['Sanskrit', 0.01], ['Santhali', 6.5], ['Sindhi', 2.5], ['Tamil', 61], ['Telugu', 74], ['Urdu', 52] ] pie_chart_slice_table = Daru::View::Table.new(data, pageSize: 5) pie_chart_slice_table.show_in_iruby pie_chart_slice_options = { type: :pie, height: 500 } pie_chart_slice = Daru::View::Plot.new(pie_chart_slice_table.table, pie_chart_slice_options) pie_chart_slice.show_in_iruby pie_chart_slice_options = { title: 'Indian Language Use', legend: 'none', pieSliceText: 'label', slices: { 4 => {offset: 0.2}, 12 => {offset: 0.3}, 14 => {offset: 0.4}, 15 => {offset: 0.5}, }, type: :pie, height: 500 } pie_chart_slice = Daru::View::Plot.new(pie_chart_slice_table.table, pie_chart_slice_options) pie_chart_slice.show_in_iruby idx = Daru::Index.new ['Pac Man', 'Percentage'] data_rows = [ ['', 75], ['', 25]] df_pac_man = Daru::DataFrame.rows(data_rows) df_pac_man.vectors = idx df_pac_man pie_pac_chart = Daru::View::Plot.new(df_pac_man, type: :pie) pie_pac_chart.show_in_iruby opts = { legend: 'none', pieSliceText: 'none', pieStartAngle: 135, tooltip: { trigger: 'none' }, slices: { 0 => { color: 'yellow' }, 1 => { color: 'transparent' } }, type: :pie } pie_pac_chart = Daru::View::Plot.new(df_pac_man, opts) pie_pac_chart.show_in_iruby idx = Daru::Index.new ['Pizza', 'Populartiy'] data_rows = [ ['Pepperoni', 33], ['Hawaiian', 26], ['Mushroom', 22], ['Sausage', 10], # Below limit. ['Anchovies', 9] # Below limit. ] df_pizza = Daru::DataFrame.rows(data_rows) df_pizza.vectors = idx df_pizza opts = { title: 'Popularity of Types of Pizza', sliceVisibilityThreshold: 0.2, type: :pie, height: 400 } pie_pizza = Daru::View::Plot.new(df_pizza, opts) pie_pizza.show_in_iruby