SciRuby/gnuplotrb

View on GitHub
examples/plot_histogram/plot.rb

Summary

Maintainability
A
1 hr
Test Coverage
require 'gnuplotrb'
include GnuplotRB

titles = %w{decade Austria Hungary  Belgium}
data = [
  ['1891-1900',  234081,  181288,  18167],
  ['1901-1910',  668209,  808511,  41635],
  ['1911-1920',  453649,  442693,  33746],
  ['1921-1930',  32868,   30680,   15846],
  ['1931-1940',  3563,    7861,    4817],
  ['1941-1950',  24860,   3469,    12189],
  ['1951-1960',  67106,   36637,   18575],
  ['1961-1970',  20621,   5401,    9192],
]
x = data.map(&:first)
datasets = (1..3).map do |col|
  y = data.map { |row| row[col] }
  Dataset.new([x, y], using: '2:xtic(1)', title: titles[col], file: true)
end
plot = Plot.new(*datasets, title:  'Histogram example', style: 'data histograms', xtics: 'nomirror rotate by -45')

plot.to_png('./gnuplot_gem.png', size: [600, 600])