ruby-mext 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/mext/math/expon.rb +4 -0
- data/lib/mext/math/function.rb +10 -0
- data/lib/mext/math/line.rb +4 -0
- data/lib/tasks/gruff/expon.rake +5 -7
- data/lib/tasks/gruff/gruff.rake +11 -1
- data/lib/tasks/gruff/gruff_plot.rb +13 -5
- data/lib/tasks/gruff/line.rake +18 -0
- data/lib/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '03508612b0d517d9d7e3928a1cee1cfecbeb65a3482351e7c40446de27b1b9de'
|
4
|
+
data.tar.gz: 96439ab70941ef071c43540cb5502421d06f12314d71c51ea5671c0f39ba5b70
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c0d5720ecb32f75b9c64437695596f063691a6bf17c459e7fc1ee8b1cc2943a0cac6b74ef4663a02c47aa71a740ab3f85e6eeefd326139e2409154681fdffe29
|
7
|
+
data.tar.gz: 6468d791f4d178b41214599b13542a7ee94cd0141f83db12d581f9bc727b522fe2b3c6d54db63366df8728e700fc70882b85fea40024a51cf7f879f618a890e7
|
data/lib/mext/math/expon.rb
CHANGED
data/lib/mext/math/function.rb
CHANGED
data/lib/mext/math/line.rb
CHANGED
data/lib/tasks/gruff/expon.rake
CHANGED
@@ -4,17 +4,15 @@ require File.expand_path(File.join('..', 'gruff_plot'), __FILE__)
|
|
4
4
|
|
5
5
|
namespace :plot do
|
6
6
|
|
7
|
-
task :create_output_dir do
|
8
|
-
unless Dir.exists?(Mext::Gruff::Plotter::OUTPUT_PATH)
|
9
|
-
mkdir_p Mext::Gruff::Plotter::OUTPUT_PATH
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
7
|
desc 'plot the Expon dataset'
|
14
8
|
task :expon => :create_output_dir do
|
15
9
|
ranges = [ Range.new(0, 2), Range.new(3,3) ]
|
16
10
|
p = Mext::Gruff::Plotter.new('expon_dataset', 800, Mext::Spec::Fixtures::Math::EXPON_DATASETS, ranges)
|
17
|
-
p.plot
|
11
|
+
p.plot do
|
12
|
+
|args|
|
13
|
+
(ys, ye, xs, xe, tau, xmid, ymid) = args
|
14
|
+
Math::Expon.new(ys, ye, xs, xe, tau)
|
15
|
+
end
|
18
16
|
end
|
19
17
|
|
20
18
|
end
|
data/lib/tasks/gruff/gruff.rake
CHANGED
@@ -1,3 +1,13 @@
|
|
1
1
|
|
2
2
|
desc 'plot all plots'
|
3
|
-
task :plot => ['plot:expon']
|
3
|
+
task :plot => ['plot:expon', 'plot:line']
|
4
|
+
|
5
|
+
namespace :plot do
|
6
|
+
|
7
|
+
task :create_output_dir do
|
8
|
+
unless Dir.exists?(Mext::Gruff::Plotter::OUTPUT_PATH)
|
9
|
+
mkdir_p Mext::Gruff::Plotter::OUTPUT_PATH
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
@@ -1,18 +1,24 @@
|
|
1
1
|
require 'gruff'
|
2
|
+
require 'byebug'
|
2
3
|
|
3
4
|
module Mext
|
4
5
|
module Gruff
|
5
6
|
|
6
7
|
class Plotter
|
7
8
|
attr_reader :title, :size, :datasets, :ranges
|
9
|
+
attr_accessor :step, :dot_radius
|
8
10
|
|
9
11
|
OUTPUT_PATH = File.expand_path(File.join(['..'] * 4, 'tmp', 'output'), __FILE__)
|
12
|
+
DEFAULT_STEP = 0.1
|
13
|
+
DEFAULT_DOT_RADIUS = 2.0
|
10
14
|
|
11
|
-
def initialize(t, s, ds, r = nil)
|
15
|
+
def initialize(t, s, ds, r = nil, stp = DEFAULT_STEP)
|
12
16
|
@title = t
|
13
17
|
@size = s
|
14
18
|
@datasets = ds
|
15
19
|
@ranges = r
|
20
|
+
self.step = stp
|
21
|
+
self.dot_radius = DEFAULT_DOT_RADIUS
|
16
22
|
end
|
17
23
|
|
18
24
|
def plot
|
@@ -22,12 +28,13 @@ module Mext
|
|
22
28
|
|range|
|
23
29
|
g = ::Gruff::Line.new(self.size)
|
24
30
|
g.title = self.title + " (#{idx})"
|
31
|
+
g.theme = ::Gruff::Themes::PASTEL
|
32
|
+
g.dot_radius = self.dot_radius
|
25
33
|
self.datasets[range].each do
|
26
34
|
|args|
|
27
|
-
|
28
|
-
|
29
|
-
(xdata, ydata)
|
30
|
-
g.dataxy("tau: #{f.tau}", xdata, ydata)
|
35
|
+
f = yield(args)
|
36
|
+
(xdata, ydata) = f.xy(self.step)
|
37
|
+
g.dataxy(f.label, xdata, ydata)
|
31
38
|
end
|
32
39
|
g.write(File.join(Mext::Gruff::Plotter::OUTPUT_PATH, self.title.gsub(/\s+/, '_') + "_#{idx}.png"))
|
33
40
|
idx += 1
|
@@ -35,5 +42,6 @@ module Mext
|
|
35
42
|
end
|
36
43
|
|
37
44
|
end
|
45
|
+
|
38
46
|
end
|
39
47
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'fileutils'
|
2
|
+
require File.expand_path(File.join(['..'] * 4, 'spec', 'fixtures', 'line_dataset'), __FILE__)
|
3
|
+
require File.expand_path(File.join('..', 'gruff_plot'), __FILE__)
|
4
|
+
|
5
|
+
namespace :plot do
|
6
|
+
|
7
|
+
desc 'plot the Line dataset'
|
8
|
+
task :line => :create_output_dir do
|
9
|
+
ranges = [ Range.new(0, 0), Range.new(1,1) ]
|
10
|
+
p = Mext::Gruff::Plotter.new('line_dataset', 800, Mext::Spec::Fixtures::Math::LINE_DATASETS, ranges)
|
11
|
+
p.plot do
|
12
|
+
|args|
|
13
|
+
(ys, ye, xs, xe, xmid, ymid) = args
|
14
|
+
Math::Line.new(ys, ye, xs, xe)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-mext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nicola Bernardini
|
@@ -137,6 +137,7 @@ files:
|
|
137
137
|
- lib/tasks/gruff/expon.rake
|
138
138
|
- lib/tasks/gruff/gruff.rake
|
139
139
|
- lib/tasks/gruff/gruff_plot.rb
|
140
|
+
- lib/tasks/gruff/line.rake
|
140
141
|
- lib/version.rb
|
141
142
|
- ruby-mext.gemspec
|
142
143
|
homepage: https://github.com/nicb/ruby-mext
|