rubyvis 0.3.4 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -255,7 +255,7 @@ class Rubyvis::Mark
255
255
  mark_method :layout_grid, Rubyvis::Layout::Grid
256
256
 
257
257
  ##
258
- # :method: tree_grid(opts,&block)
258
+ # :method: layout_tree(opts,&block)
259
259
  #
260
260
  # Adds a Layout::Tree to current mark.
261
261
  #
@@ -268,4 +268,32 @@ class Rubyvis::Mark
268
268
  # See Mark for examples of use
269
269
  mark_method :layout_tree, Rubyvis::Layout::Tree
270
270
 
271
+ ##
272
+ # :method: layout_horizon(opts,&block)
273
+ #
274
+ # Adds a Layout::Horizon to current mark.
275
+ #
276
+ # If a block is provided, the context will be defined differently if
277
+ # parameter is provided
278
+ # * Without parameter: block executed inside context of new mark
279
+ # * With paramenter: block executed inside context of current mark.
280
+ # Paramenter references new mark
281
+ #
282
+ # See Mark for examples of use
283
+ mark_method :layout_horizon, Rubyvis::Layout::Horizon
284
+
285
+ ##
286
+ # :method: layout_arc(opts,&block)
287
+ #
288
+ # Adds a Layout::Arc to current mark.
289
+ #
290
+ # If a block is provided, the context will be defined differently if
291
+ # parameter is provided
292
+ # * Without parameter: block executed inside context of new mark
293
+ # * With paramenter: block executed inside context of current mark.
294
+ # Paramenter references new mark
295
+ #
296
+ # See Mark for examples of use
297
+ mark_method :layout_arc, Rubyvis::Layout::Arc
298
+
271
299
  end
@@ -45,16 +45,15 @@ module Rubyvis
45
45
  e=e.next_sibling_node
46
46
 
47
47
  end
48
+ # fill
48
49
  e=self.fill(e,scenes, i)
50
+ # transform
49
51
  k=self.scale
50
52
  t=s.transform
51
-
52
53
  x=s.left+t.x
53
54
  y=s.top+t.y
54
-
55
-
56
55
  SvgScene.scale=SvgScene.scale*t.k
57
-
56
+ # children
58
57
  s.children.each_with_index {|child, i2|
59
58
  child._g=e=SvgScene.expect(e, "g", {
60
59
  "transform"=> "translate(" + x.to_s + "," + y.to_s + ")" + (t.k != 1 ? " scale(" + t.k.to_s + ")" : "")
@@ -63,8 +62,11 @@ module Rubyvis
63
62
  g.add_element(e) if(!e.parent)
64
63
  e=e.next_sibling_node
65
64
  }
65
+ # transform (pop)
66
66
  SvgScene.scale=k
67
+ # stroke
67
68
  e=SvgScene.stroke(e,scenes,i)
69
+ # clip
68
70
  if (s.overflow=='hidden')
69
71
  scenes._g=g=c.parent
70
72
  e=c.next_sibling_node
@@ -8,7 +8,7 @@ module Rubyvis
8
8
  end
9
9
  include Enumerable
10
10
  attr_accessor :visible
11
- attr_accessor :mark, :type, :child_index, :parent, :parent_index, :target, :defs, :data, :antialias, :line_width, :fill_style, :overflow, :width, :height, :top, :bottom, :left, :right, :title, :reverse, :stroke_style, :transform, :canvas, :_g, :events, :cursor, :children, :id, :segmented, :interpolate, :tension, :name, :text_baseline, :text_align, :text, :font, :text_angle, :text_style, :text_margin, :text_decoration, :text_shadow, :line_join, :eccentricity, :shape_size, :shape, :shape_angle, :shape_radius, :start_angle, :end_angle, :angle, :inner_radius, :outer_radius, :layers, :orient, :offset, :order,:url, :image_width, :image_height, :image, :_id, :nodes, :round, :links, :padding_left, :padding_right, :padding_top, :padding_bottom, :mode, :group, :depth, :breadth, :spacing, :rows, :cols, :_grid
11
+ attr_accessor :mark, :type, :child_index, :parent, :parent_index, :target, :defs, :data, :antialias, :line_width, :fill_style, :overflow, :width, :height, :top, :bottom, :left, :right, :title, :reverse, :stroke_style, :transform, :canvas, :_g, :events, :cursor, :children, :id, :segmented, :interpolate, :tension, :name, :text_baseline, :text_align, :text, :font, :text_angle, :text_style, :text_margin, :text_decoration, :text_shadow, :line_join, :eccentricity, :shape_size, :shape, :shape_angle, :shape_radius, :start_angle, :end_angle, :angle, :inner_radius, :outer_radius, :layers, :orient, :offset, :order,:url, :image_width, :image_height, :image, :_id, :nodes, :round, :links, :padding_left, :padding_right, :padding_top, :padding_bottom, :mode, :group, :depth, :breadth, :spacing, :rows, :cols, :_grid,:bands, :background_style, :positive_style, :negative_style,:directed
12
12
 
13
13
  def []=(v,i)
14
14
  if v.is_a? Numeric
@@ -0,0 +1,79 @@
1
+ require File.expand_path(File.dirname(__FILE__)+"/spec_helper.rb")
2
+ describe "Rubyvis color methods" do
3
+ it "should return correct Rubyvis.ramp" do
4
+ a=Rubyvis.ramp("white","red")
5
+ a[0].should eq Rubyvis.color("rgb(255,255,255)")
6
+ a[0.5].should eq Rubyvis.color("rgb(255,128,128)")
7
+ a[1].should eq Rubyvis.color("rgb(255,0,0)")
8
+ end
9
+
10
+ # <li>#f00 // #rgb
11
+ # <li>#ff0000 // #rrggbb
12
+ # <li>rgb(255, 0, 0)
13
+ # <li>rgb(100%, 0%, 0%)
14
+ # <li>hsl(0, 100%, 50%)
15
+ # <li>rgba(0, 0, 255, 0.5)
16
+ # <li>hsla(120, 100%, 50%, 1)
17
+ describe "Rubyvis.color" do
18
+
19
+ it "should return correct Rubyvis.color with three hex" do
20
+ Rubyvis.color("#f97").should eq Rubyvis::Color::Rgb.new("ff".to_i(16), "99".to_i(16),"77".to_i(16),1 )
21
+ end
22
+ it "should return correct Rubyvis.color with 6 hex" do
23
+ Rubyvis.color("#f19171").should eq Rubyvis::Color::Rgb.new("f1".to_i(16), "91".to_i(16),"71".to_i(16),1 )
24
+ end
25
+ it "should return correct Rubyvis.color rbg() with integers" do
26
+ r,g,b=rand(255),rand(255),rand(255)
27
+ Rubyvis.color("rgb(#{r},#{g},#{b})").should eq Rubyvis::Color::Rgb.new(r, g, b,1 )
28
+ end
29
+ it "should return correct Rubyvis.color rbga() with integers" do
30
+ r,g,b,a=rand(255),rand(255),rand(255), rand()
31
+ Rubyvis.color("rgba(#{r},#{g},#{b},#{a})").should eq Rubyvis::Color::Rgb.new(r, g, b,"#{a}".to_f )
32
+ end
33
+ it "should return correct Rubyvis.color rbg() with percents" do
34
+ r,g,b=rand(100),rand(100),rand(100)
35
+ Rubyvis.color("rgb(#{r}%,#{g}%,#{b}%)").should eq Rubyvis::Color::Rgb.new((r*2.55).round, (g*2.55).round, (b*2.55).round,1 )
36
+ end
37
+ it "should return correct Rubyvis.color hsl" do
38
+ Rubyvis.color("hsl(100,50,50)").should eq Rubyvis::Color::Rgb.new(106,191,64,1)
39
+
40
+ h,s,l=rand(360),rand(100),rand(100)
41
+
42
+ Rubyvis.color("hsl(#{h},#{s},#{l})").should eq Rubyvis::Color::Hsl.new(h,s/100.0,l/100.0,1).rgb
43
+ end
44
+ it "should return correct Rubyvis.color hsla" do
45
+ h,s,l,a=rand(360),rand(100),rand(100), rand()
46
+
47
+ Rubyvis.color("hsla(#{h},#{s},#{l},#{a})").should eq Rubyvis::Color::Hsl.new(h,s/100.0,l/100.0, "#{a}".to_f).rgb
48
+ end
49
+ end
50
+ describe Rubyvis::Color::Rgb do
51
+ before do
52
+ @r,@g,@b,@a=rand(255),rand(255),rand(255),rand()
53
+ @rgb=Rubyvis::Color::Rgb.new(@r,@g,@b,@a)
54
+ end
55
+ it "return correct ==" do
56
+ Rubyvis::Color::Rgb.new(0, 0,0,1 ).should eq Rubyvis::Color::Rgb.new(0, 0,0,1 )
57
+
58
+ Rubyvis::Color::Rgb.new(10, 0,0,1 ).should_not eq Rubyvis::Color::Rgb.new(0, 0,0,1 )
59
+
60
+ Rubyvis::Color::Rgb.new(0, 10,0,1 ).should_not eq Rubyvis::Color::Rgb.new(0, 0,0,1 )
61
+
62
+ Rubyvis::Color::Rgb.new(0, 0,10,1 ).should_not eq Rubyvis::Color::Rgb.new(0, 0,0,1 )
63
+ Rubyvis::Color::Rgb.new(0, 0,0,0 ).should_not eq Rubyvis::Color::Rgb.new(0, 0,0,1 )
64
+ end
65
+ it "return correct red()" do
66
+ @rgb.red(255).should eq Rubyvis::Color::Rgb.new(255,@g,@b,@a)
67
+ end
68
+ it "return correct green()" do
69
+ @rgb.green(255).should eq Rubyvis::Color::Rgb.new(@r,255,@b,@a)
70
+ end
71
+ it "return correct blue()" do
72
+ @rgb.blue(255).should eq Rubyvis::Color::Rgb.new(@r,@g,255,@a)
73
+ end
74
+ it "return correct alpha()" do
75
+ @rgb.alpha(0.5).should eq Rubyvis::Color::Rgb.new(@r,@g,@b,0.5)
76
+ end
77
+
78
+ end
79
+ end
@@ -0,0 +1,78 @@
1
+ require File.expand_path(File.dirname(__FILE__)+"/spec_helper.rb")
2
+ describe Rubyvis::Layout::Horizon do
3
+ it "should have correct properties" do
4
+ props=[:antialias, :background_style, :bands, :bottom, :canvas, :cursor, :data, :events, :fill_style, :height, :id, :left, :line_width, :mode, :negative_style, :overflow, :positive_style, :reverse, :right, :stroke_style, :title, :top, :transform, :visible, :width].inject({}) {|ac, v| ac[v]=true; ac}
5
+ Rubyvis::Layout::Horizon.properties.should==props
6
+ end
7
+ describe "rendered" do
8
+ before do
9
+ @data = Rubyvis.range(-5, 5, 0.1).map {|d|
10
+ OpenStruct.new({:x=> d , :y=> d**2-10});
11
+ }
12
+
13
+
14
+
15
+ w = 400
16
+ h = 100
17
+ x = Rubyvis::Scale.linear(@data, lambda {|d| d.x}).range(0, w)
18
+ y = Rubyvis::Scale.linear(@data, lambda {|d| d.y}).range(-50, h*2);
19
+
20
+ #/* The root panel. */
21
+ @vis = pv.Panel.new().width(w).height(h*2+20).bottom(20).left(20).right(10).top(5)
22
+
23
+
24
+
25
+ @pan = @vis.add(Rubyvis::Panel).
26
+ height(80).
27
+ top(30)
28
+
29
+ @pan.add(Rubyvis::Layout::Horizon).
30
+ bands(3).
31
+ band.add(Rubyvis::Area).
32
+ data(@data).
33
+ left(lambda {|d| x[d.x]}).
34
+ height(lambda {|d| y[d.y]})
35
+ @vis.render
36
+
37
+ html_out=<<EOF
38
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="430" height="245"><g transform="translate(20, 5)"><g transform="translate(0, 30)"><g><g clip-path="url(#87)"><clippath id="87"><rect x="0" y="0" width="400" height="80"/>
39
+ </clippath><rect width="400" height="80" fill="rgb(255,255,255)"/><g><path d="M0,-120L4.0404040404040265,-110.10000000000005L8.080808080808087,-100.4L12.121212121212114,-90.90000000000003L16.161616161616173,-81.59999999999997L20.2020202020202,-72.5L24.242424242424228,-63.60000000000002L28.282828282828287,-54.89999999999998L32.32323232323232,-46.400000000000006L36.363636363636374,-38.099999999999994L40.4040404040404,-30L44.44444444444445,-22.099999999999994L48.48484848484849,-14.400000000000006L52.52525252525252,-6.900000000000034L56.565656565656575,0.4000000000000341L60.60606060606061,7.5L64.64646464646465,14.40000000000002L68.68686868686869,21.100000000000023L72.72727272727272,27.59999999999998L76.76767676767679,33.90000000000002L80.8080808080808,40L84.84848484848484,45.89999999999999L88.8888888888889,51.60000000000002L92.92929292929294,57.10000000000002L96.96969696969698,62.40000000000002L101.01010101010101,67.5L105.05050505050507,72.4L109.09090909090911,77.10000000000001L113.13131313131312,81.60000000000001L117.17171717171718,85.9L121.21212121212122,90L125.25252525252526,93.9L129.2929292929293,97.60000000000001L133.33333333333334,101.10000000000001L137.37373737373738,104.4L141.41414141414143,107.5L145.45454545454547,110.4L149.4949494949495,113.10000000000001L153.53535353535355,115.60000000000001L157.5757575757576,117.9L161.6161616161616,120L165.65656565656568,121.9L169.6969696969697,123.6L173.73737373737373,125.1L177.7777777777778,126.4L181.8181818181818,127.5L185.85858585858588,128.4L189.8989898989899,129.1L193.93939393939397,129.60000000000002L197.97979797979798,129.9L202.02020202020202,130L206.06060606060606,129.9L210.10101010101013,129.6L214.14141414141415,129.1L218.18181818181822,128.4L222.22222222222223,127.5L226.26262626262624,126.39999999999999L230.3030303030303,125.1L234.34343434343435,123.6L238.3838383838384,121.89999999999999L242.42424242424244,120L246.4646464646465,117.89999999999999L250.50505050505052,115.6L254.5454545454546,113.1L258.5858585858586,110.39999999999999L262.62626262626264,107.5L266.6666666666667,104.39999999999998L270.7070707070707,101.1L274.74747474747477,97.59999999999998L278.7878787878788,93.89999999999998L282.82828282828285,90L286.8686868686869,85.89999999999998L290.90909090909093,81.6L294.949494949495,77.09999999999997L298.989898989899,72.39999999999998L303.030303030303,67.5L307.0707070707071,62.39999999999998L311.11111111111114,57.099999999999994L315.1515151515152,51.599999999999966L319.1919191919192,45.89999999999998L323.2323232323232,40L327.27272727272725,33.90000000000002L331.31313131313135,27.599999999999923L335.3535353535354,21.099999999999966L339.3939393939394,14.399999999999977L343.4343434343434,7.5L347.47474747474746,0.4000000000000341L351.51515151515156,-6.900000000000091L355.5555555555556,-14.400000000000063L359.5959595959596,-22.100000000000023L363.6363636363636,-30L367.67676767676767,-38.099999999999994L371.71717171717177,-46.40000000000009L375.75757575757575,-54.90000000000006L379.7979797979798,-63.60000000000002L383.83838383838383,-72.5L387.87878787878793,-81.60000000000014L391.919191919192,-90.90000000000009L395.95959595959596,-100.40000000000006L400,-110.10000000000005L400,80L395.95959595959596,80L391.919191919192,80L387.87878787878793,80L383.83838383838383,80L379.7979797979798,80L375.75757575757575,80L371.71717171717177,80L367.67676767676767,80L363.6363636363636,80L359.5959595959596,80L355.5555555555556,80L351.51515151515156,80L347.47474747474746,80L343.4343434343434,80L339.3939393939394,80L335.3535353535354,80L331.31313131313135,80L327.27272727272725,80L323.2323232323232,80L319.1919191919192,80L315.1515151515152,80L311.11111111111114,80L307.0707070707071,80L303.030303030303,80L298.989898989899,80L294.949494949495,80L290.90909090909093,80L286.8686868686869,80L282.82828282828285,80L278.7878787878788,80L274.74747474747477,80L270.7070707070707,80L266.6666666666667,80L262.62626262626264,80L258.5858585858586,80L254.5454545454546,80L250.50505050505052,80L246.4646464646465,80L242.42424242424244,80L238.3838383838384,80L234.34343434343435,80L230.3030303030303,80L226.26262626262624,80L222.22222222222223,80L218.18181818181822,80L214.14141414141415,80L210.10101010101013,80L206.06060606060606,80L202.02020202020202,80L197.97979797979798,80L193.93939393939397,80.00000000000001L189.8989898989899,80L185.85858585858588,80L181.8181818181818,80L177.7777777777778,80L173.73737373737373,80L169.6969696969697,80L165.65656565656568,80L161.6161616161616,80L157.5757575757576,80L153.53535353535355,80L149.4949494949495,80L145.45454545454547,80L141.41414141414143,80L137.37373737373738,80L133.33333333333334,80L129.2929292929293,80L125.25252525252526,80L121.21212121212122,80L117.17171717171718,80L113.13131313131312,80L109.09090909090911,80L105.05050505050507,80L101.01010101010101,80L96.96969696969698,80L92.92929292929294,80L88.8888888888889,80L84.84848484848484,80L80.8080808080808,80L76.76767676767679,80L72.72727272727272,80L68.68686868686869,80L64.64646464646465,80L60.60606060606061,80L56.565656565656575,80L52.52525252525252,80L48.48484848484849,80L44.44444444444445,80L40.4040404040404,80L36.363636363636374,80L32.32323232323232,80L28.282828282828287,80L24.242424242424228,80L20.2020202020202,80L16.161616161616173,80L12.121212121212114,80L8.080808080808087,80L4.0404040404040265,80L0,80Z" fill="rgb(180,210,230)"/>
40
+ </g>
41
+ </g><g clip-path="url(#88)"><clippath id="88"><rect x="0" y="0" width="400" height="80"/>
42
+ </clippath><g><path d="M0,-200L4.0404040404040265,-190.10000000000005L8.080808080808087,-180.4L12.121212121212114,-170.90000000000003L16.161616161616173,-161.59999999999997L20.2020202020202,-152.5L24.242424242424228,-143.60000000000002L28.282828282828287,-134.89999999999998L32.32323232323232,-126.4L36.363636363636374,-118.1L40.4040404040404,-110L44.44444444444445,-102.1L48.48484848484849,-94.4L52.52525252525252,-86.90000000000003L56.565656565656575,-79.59999999999997L60.60606060606061,-72.5L64.64646464646465,-65.59999999999998L68.68686868686869,-58.89999999999998L72.72727272727272,-52.40000000000002L76.76767676767679,-46.09999999999998L80.8080808080808,-40L84.84848484848484,-34.10000000000001L88.8888888888889,-28.399999999999977L92.92929292929294,-22.899999999999977L96.96969696969698,-17.59999999999998L101.01010101010101,-12.5L105.05050505050507,-7.599999999999994L109.09090909090911,-2.8999999999999915L113.13131313131312,1.6000000000000085L117.17171717171718,5.900000000000006L121.21212121212122,10L125.25252525252526,13.900000000000006L129.2929292929293,17.60000000000001L133.33333333333334,21.10000000000001L137.37373737373738,24.400000000000006L141.41414141414143,27.5L145.45454545454547,30.400000000000006L149.4949494949495,33.10000000000001L153.53535353535355,35.60000000000001L157.5757575757576,37.900000000000006L161.6161616161616,40L165.65656565656568,41.900000000000006L169.6969696969697,43.599999999999994L173.73737373737373,45.099999999999994L177.7777777777778,46.400000000000006L181.8181818181818,47.5L185.85858585858588,48.400000000000006L189.8989898989899,49.099999999999994L193.93939393939397,49.60000000000002L197.97979797979798,49.900000000000006L202.02020202020202,50L206.06060606060606,49.900000000000006L210.10101010101013,49.599999999999994L214.14141414141415,49.099999999999994L218.18181818181822,48.400000000000006L222.22222222222223,47.5L226.26262626262624,46.39999999999999L230.3030303030303,45.099999999999994L234.34343434343435,43.599999999999994L238.3838383838384,41.89999999999999L242.42424242424244,40L246.4646464646465,37.89999999999999L250.50505050505052,35.599999999999994L254.5454545454546,33.099999999999994L258.5858585858586,30.39999999999999L262.62626262626264,27.5L266.6666666666667,24.399999999999977L270.7070707070707,21.099999999999994L274.74747474747477,17.59999999999998L278.7878787878788,13.899999999999977L282.82828282828285,10L286.8686868686869,5.899999999999977L290.90909090909093,1.5999999999999943L294.949494949495,-2.900000000000034L298.989898989899,-7.600000000000023L303.030303030303,-12.5L307.0707070707071,-17.600000000000023L311.11111111111114,-22.900000000000006L315.1515151515152,-28.400000000000034L319.1919191919192,-34.10000000000002L323.2323232323232,-40L327.27272727272725,-46.09999999999998L331.31313131313135,-52.40000000000008L335.3535353535354,-58.900000000000034L339.3939393939394,-65.60000000000002L343.4343434343434,-72.5L347.47474747474746,-79.59999999999997L351.51515151515156,-86.90000000000009L355.5555555555556,-94.40000000000006L359.5959595959596,-102.10000000000002L363.6363636363636,-110L367.67676767676767,-118.1L371.71717171717177,-126.40000000000009L375.75757575757575,-134.90000000000006L379.7979797979798,-143.60000000000002L383.83838383838383,-152.5L387.87878787878793,-161.60000000000014L391.919191919192,-170.9000000000001L395.95959595959596,-180.40000000000006L400,-190.10000000000005L400,0L395.95959595959596,0L391.919191919192,0L387.87878787878793,0L383.83838383838383,0L379.7979797979798,0L375.75757575757575,0L371.71717171717177,0L367.67676767676767,0L363.6363636363636,0L359.5959595959596,0L355.5555555555556,0L351.51515151515156,0L347.47474747474746,0L343.4343434343434,0L339.3939393939394,0L335.3535353535354,0L331.31313131313135,0L327.27272727272725,0L323.2323232323232,0L319.1919191919192,0L315.1515151515152,0L311.11111111111114,0L307.0707070707071,0L303.030303030303,0L298.989898989899,-7.105427357601002e-15L294.949494949495,0L290.90909090909093,0L286.8686868686869,0L282.82828282828285,0L278.7878787878788,-7.105427357601002e-15L274.74747474747477,0L270.7070707070707,0L266.6666666666667,0L262.62626262626264,0L258.5858585858586,0L254.5454545454546,7.105427357601002e-15L250.50505050505052,7.105427357601002e-15L246.4646464646465,0L242.42424242424244,0L238.3838383838384,0L234.34343434343435,0L230.3030303030303,0L226.26262626262624,0L222.22222222222223,0L218.18181818181822,7.105427357601002e-15L214.14141414141415,-7.105427357601002e-15L210.10101010101013,0L206.06060606060606,0L202.02020202020202,0L197.97979797979798,0L193.93939393939397,1.4210854715202004e-14L189.8989898989899,-7.105427357601002e-15L185.85858585858588,7.105427357601002e-15L181.8181818181818,0L177.7777777777778,0L173.73737373737373,0L169.6969696969697,0L165.65656565656568,-7.105427357601002e-15L161.6161616161616,0L157.5757575757576,0L153.53535353535355,0L149.4949494949495,0L145.45454545454547,-3.552713678800501e-15L141.41414141414143,0L137.37373737373738,-7.105427357601002e-15L133.33333333333334,-3.552713678800501e-15L129.2929292929293,0L125.25252525252526,0L121.21212121212122,0L117.17171717171718,-7.105427357601002e-15L113.13131313131312,0L109.09090909090911,0L105.05050505050507,7.105427357601002e-15L101.01010101010101,0L96.96969696969698,0L92.92929292929294,0L88.8888888888889,0L84.84848484848484,0L80.8080808080808,0L76.76767676767679,0L72.72727272727272,0L68.68686868686869,0L64.64646464646465,0L60.60606060606061,0L56.565656565656575,0L52.52525252525252,0L48.48484848484849,0L44.44444444444445,0L40.4040404040404,0L36.363636363636374,0L32.32323232323232,0L28.282828282828287,0L24.242424242424228,0L20.2020202020202,0L16.161616161616173,0L12.121212121212114,0L8.080808080808087,0L4.0404040404040265,0L0,0Z" fill="rgb(241,183,183)"/>
43
+ </g>
44
+ </g><g clip-path="url(#89)"><clippath id="89"><rect x="0" y="0" width="400" height="80"/>
45
+ </clippath><g><path d="M0,-40L4.0404040404040265,-30.10000000000005L8.080808080808087,-20.400000000000006L12.121212121212114,-10.900000000000034L16.161616161616173,-1.599999999999966L20.2020202020202,7.5L24.242424242424228,16.399999999999977L28.282828282828287,25.100000000000023L32.32323232323232,33.599999999999994L36.363636363636374,41.900000000000006L40.4040404040404,50L44.44444444444445,57.900000000000006L48.48484848484849,65.6L52.52525252525252,73.09999999999997L56.565656565656575,80.40000000000003L60.60606060606061,87.5L64.64646464646465,94.40000000000002L68.68686868686869,101.10000000000002L72.72727272727272,107.59999999999998L76.76767676767679,113.90000000000002L80.8080808080808,120L84.84848484848484,125.89999999999999L88.8888888888889,131.60000000000002L92.92929292929294,137.10000000000002L96.96969696969698,142.40000000000003L101.01010101010101,147.5L105.05050505050507,152.4L109.09090909090911,157.10000000000002L113.13131313131312,161.60000000000002L117.17171717171718,165.9L121.21212121212122,170L125.25252525252526,173.9L129.2929292929293,177.60000000000002L133.33333333333334,181.10000000000002L137.37373737373738,184.4L141.41414141414143,187.5L145.45454545454547,190.4L149.4949494949495,193.10000000000002L153.53535353535355,195.60000000000002L157.5757575757576,197.9L161.6161616161616,200L165.65656565656568,201.9L169.6969696969697,203.6L173.73737373737373,205.1L177.7777777777778,206.4L181.8181818181818,207.5L185.85858585858588,208.4L189.8989898989899,209.1L193.93939393939397,209.60000000000002L197.97979797979798,209.9L202.02020202020202,210L206.06060606060606,209.9L210.10101010101013,209.6L214.14141414141415,209.1L218.18181818181822,208.4L222.22222222222223,207.5L226.26262626262624,206.39999999999998L230.3030303030303,205.1L234.34343434343435,203.6L238.3838383838384,201.89999999999998L242.42424242424244,200L246.4646464646465,197.89999999999998L250.50505050505052,195.6L254.5454545454546,193.1L258.5858585858586,190.39999999999998L262.62626262626264,187.5L266.6666666666667,184.39999999999998L270.7070707070707,181.1L274.74747474747477,177.59999999999997L278.7878787878788,173.89999999999998L282.82828282828285,170L286.8686868686869,165.89999999999998L290.90909090909093,161.6L294.949494949495,157.09999999999997L298.989898989899,152.39999999999998L303.030303030303,147.5L307.0707070707071,142.39999999999998L311.11111111111114,137.1L315.1515151515152,131.59999999999997L319.1919191919192,125.89999999999998L323.2323232323232,120L327.27272727272725,113.90000000000002L331.31313131313135,107.59999999999992L335.3535353535354,101.09999999999997L339.3939393939394,94.39999999999998L343.4343434343434,87.5L347.47474747474746,80.40000000000003L351.51515151515156,73.09999999999991L355.5555555555556,65.59999999999994L359.5959595959596,57.89999999999998L363.6363636363636,50L367.67676767676767,41.900000000000006L371.71717171717177,33.59999999999991L375.75757575757575,25.099999999999937L379.7979797979798,16.399999999999977L383.83838383838383,7.5L387.87878787878793,-1.6000000000001364L391.919191919192,-10.900000000000091L395.95959595959596,-20.400000000000063L400,-30.10000000000005L400,160L395.95959595959596,160L391.919191919192,160L387.87878787878793,160L383.83838383838383,160L379.7979797979798,160L375.75757575757575,160L371.71717171717177,160L367.67676767676767,160L363.6363636363636,160L359.5959595959596,160L355.5555555555556,160L351.51515151515156,160L347.47474747474746,160L343.4343434343434,160L339.3939393939394,160L335.3535353535354,160L331.31313131313135,160L327.27272727272725,160L323.2323232323232,160L319.1919191919192,160L315.1515151515152,160L311.11111111111114,160L307.0707070707071,160L303.030303030303,160L298.989898989899,160L294.949494949495,160L290.90909090909093,160L286.8686868686869,160L282.82828282828285,160L278.7878787878788,160L274.74747474747477,160L270.7070707070707,160L266.6666666666667,160L262.62626262626264,160L258.5858585858586,160L254.5454545454546,160L250.50505050505052,160L246.4646464646465,160L242.42424242424244,160L238.3838383838384,160L234.34343434343435,160L230.3030303030303,160L226.26262626262624,160L222.22222222222223,160L218.18181818181822,160L214.14141414141415,160L210.10101010101013,160L206.06060606060606,160L202.02020202020202,160L197.97979797979798,160L193.93939393939397,160L189.8989898989899,160L185.85858585858588,160L181.8181818181818,160L177.7777777777778,160L173.73737373737373,160L169.6969696969697,160L165.65656565656568,160L161.6161616161616,160L157.5757575757576,160L153.53535353535355,160L149.4949494949495,160L145.45454545454547,160L141.41414141414143,160L137.37373737373738,160L133.33333333333334,160L129.2929292929293,160L125.25252525252526,160L121.21212121212122,160L117.17171717171718,160L113.13131313131312,160L109.09090909090911,160L105.05050505050507,160L101.01010101010101,160L96.96969696969698,160L92.92929292929294,160L88.8888888888889,160L84.84848484848484,160L80.8080808080808,160L76.76767676767679,160L72.72727272727272,160L68.68686868686869,160L64.64646464646465,160L60.60606060606061,160L56.565656565656575,160L52.52525252525252,160L48.48484848484849,160L44.44444444444445,160L40.4040404040404,160L36.363636363636374,160L32.32323232323232,160L28.282828282828287,160L24.242424242424228,160L20.2020202020202,160L16.161616161616173,160L12.121212121212114,160L8.080808080808087,160L4.0404040404040265,160L0,160Z" fill="rgb(106,164,205)"/>
46
+ </g>
47
+ </g><g clip-path="url(#8a)"><clippath id="8a"><rect x="0" y="0" width="400" height="80"/>
48
+ </clippath><g><path d="M0,-280L4.0404040404040265,-270.1L8.080808080808087,-260.4L12.121212121212114,-250.90000000000003L16.161616161616173,-241.59999999999997L20.2020202020202,-232.5L24.242424242424228,-223.60000000000002L28.282828282828287,-214.89999999999998L32.32323232323232,-206.4L36.363636363636374,-198.1L40.4040404040404,-190L44.44444444444445,-182.1L48.48484848484849,-174.4L52.52525252525252,-166.90000000000003L56.565656565656575,-159.59999999999997L60.60606060606061,-152.5L64.64646464646465,-145.59999999999997L68.68686868686869,-138.89999999999998L72.72727272727272,-132.40000000000003L76.76767676767679,-126.09999999999998L80.8080808080808,-120L84.84848484848484,-114.10000000000001L88.8888888888889,-108.39999999999998L92.92929292929294,-102.89999999999998L96.96969696969698,-97.59999999999998L101.01010101010101,-92.5L105.05050505050507,-87.6L109.09090909090911,-82.89999999999999L113.13131313131312,-78.39999999999999L117.17171717171718,-74.1L121.21212121212122,-70L125.25252525252526,-66.1L129.2929292929293,-62.39999999999999L133.33333333333334,-58.89999999999999L137.37373737373738,-55.599999999999994L141.41414141414143,-52.5L145.45454545454547,-49.599999999999994L149.4949494949495,-46.89999999999999L153.53535353535355,-44.39999999999999L157.5757575757576,-42.099999999999994L161.6161616161616,-40L165.65656565656568,-38.099999999999994L169.6969696969697,-36.400000000000006L173.73737373737373,-34.900000000000006L177.7777777777778,-33.599999999999994L181.8181818181818,-32.5L185.85858585858588,-31.599999999999994L189.8989898989899,-30.900000000000006L193.93939393939397,-30.399999999999977L197.97979797979798,-30.099999999999994L202.02020202020202,-30L206.06060606060606,-30.099999999999994L210.10101010101013,-30.400000000000006L214.14141414141415,-30.900000000000006L218.18181818181822,-31.599999999999994L222.22222222222223,-32.5L226.26262626262624,-33.60000000000001L230.3030303030303,-34.900000000000006L234.34343434343435,-36.400000000000006L238.3838383838384,-38.10000000000001L242.42424242424244,-40L246.4646464646465,-42.10000000000001L250.50505050505052,-44.400000000000006L254.5454545454546,-46.900000000000006L258.5858585858586,-49.60000000000001L262.62626262626264,-52.5L266.6666666666667,-55.60000000000002L270.7070707070707,-58.900000000000006L274.74747474747477,-62.40000000000002L278.7878787878788,-66.10000000000002L282.82828282828285,-70L286.8686868686869,-74.10000000000002L290.90909090909093,-78.4L294.949494949495,-82.90000000000003L298.989898989899,-87.60000000000002L303.030303030303,-92.5L307.0707070707071,-97.60000000000002L311.11111111111114,-102.9L315.1515151515152,-108.40000000000003L319.1919191919192,-114.10000000000002L323.2323232323232,-120L327.27272727272725,-126.09999999999998L331.31313131313135,-132.4000000000001L335.3535353535354,-138.90000000000003L339.3939393939394,-145.60000000000002L343.4343434343434,-152.5L347.47474747474746,-159.59999999999997L351.51515151515156,-166.9000000000001L355.5555555555556,-174.40000000000006L359.5959595959596,-182.10000000000002L363.6363636363636,-190L367.67676767676767,-198.1L371.71717171717177,-206.4000000000001L375.75757575757575,-214.90000000000006L379.7979797979798,-223.60000000000002L383.83838383838383,-232.5L387.87878787878793,-241.60000000000014L391.919191919192,-250.9000000000001L395.95959595959596,-260.4000000000001L400,-270.1L400,-79.99999999999997L395.95959595959596,-80.00000000000003L391.919191919192,-80L387.87878787878793,-80L383.83838383838383,-80L379.7979797979798,-80L375.75757575757575,-80L371.71717171717177,-80L367.67676767676767,-80L363.6363636363636,-80L359.5959595959596,-80L355.5555555555556,-80L351.51515151515156,-80L347.47474747474746,-80L343.4343434343434,-80L339.3939393939394,-80L335.3535353535354,-80L331.31313131313135,-80.00000000000001L327.27272727272725,-80L323.2323232323232,-80L319.1919191919192,-80L315.1515151515152,-80L311.11111111111114,-80L307.0707070707071,-80L303.030303030303,-80L298.989898989899,-80L294.949494949495,-80L290.90909090909093,-80L286.8686868686869,-80L282.82828282828285,-80L278.7878787878788,-80L274.74747474747477,-80L270.7070707070707,-80L266.6666666666667,-80L262.62626262626264,-80L258.5858585858586,-80L254.5454545454546,-80L250.50505050505052,-80L246.4646464646465,-80L242.42424242424244,-80L238.3838383838384,-80L234.34343434343435,-80L230.3030303030303,-80L226.26262626262624,-80L222.22222222222223,-80L218.18181818181822,-80L214.14141414141415,-80L210.10101010101013,-80L206.06060606060606,-80L202.02020202020202,-80L197.97979797979798,-80L193.93939393939397,-79.99999999999999L189.8989898989899,-80L185.85858585858588,-80L181.8181818181818,-80L177.7777777777778,-80L173.73737373737373,-80L169.6969696969697,-80L165.65656565656568,-80L161.6161616161616,-80L157.5757575757576,-80L153.53535353535355,-80L149.4949494949495,-80L145.45454545454547,-80L141.41414141414143,-80L137.37373737373738,-80L133.33333333333334,-80L129.2929292929293,-80L125.25252525252526,-80L121.21212121212122,-80L117.17171717171718,-80L113.13131313131312,-80L109.09090909090911,-80L105.05050505050507,-80L101.01010101010101,-80L96.96969696969698,-80L92.92929292929294,-80L88.8888888888889,-80L84.84848484848484,-80L80.8080808080808,-80L76.76767676767679,-80L72.72727272727272,-80.00000000000001L68.68686868686869,-80L64.64646464646465,-79.99999999999999L60.60606060606061,-80L56.565656565656575,-80L52.52525252525252,-80L48.48484848484849,-80L44.44444444444445,-80L40.4040404040404,-80L36.363636363636374,-80L32.32323232323232,-80L28.282828282828287,-80L24.242424242424228,-80L20.2020202020202,-80L16.161616161616173,-80L12.121212121212114,-80L8.080808080808087,-79.99999999999997L4.0404040404040265,-79.99999999999997L0,-80Z" fill="rgb(228,111,112)"/>
49
+ </g>
50
+ </g><g clip-path="url(#8b)"><clippath id="8b"><rect x="0" y="0" width="400" height="80"/>
51
+ </clippath><g><path d="M0,40L4.0404040404040265,49.89999999999995L8.080808080808087,59.599999999999994L12.121212121212114,69.09999999999997L16.161616161616173,78.40000000000003L20.2020202020202,87.5L24.242424242424228,96.39999999999998L28.282828282828287,105.10000000000002L32.32323232323232,113.6L36.363636363636374,121.9L40.4040404040404,130L44.44444444444445,137.9L48.48484848484849,145.6L52.52525252525252,153.09999999999997L56.565656565656575,160.40000000000003L60.60606060606061,167.5L64.64646464646465,174.40000000000003L68.68686868686869,181.10000000000002L72.72727272727272,187.59999999999997L76.76767676767679,193.90000000000003L80.8080808080808,200L84.84848484848484,205.89999999999998L88.8888888888889,211.60000000000002L92.92929292929294,217.10000000000002L96.96969696969698,222.40000000000003L101.01010101010101,227.5L105.05050505050507,232.4L109.09090909090911,237.10000000000002L113.13131313131312,241.60000000000002L117.17171717171718,245.9L121.21212121212122,250L125.25252525252526,253.9L129.2929292929293,257.6L133.33333333333334,261.1L137.37373737373738,264.4L141.41414141414143,267.5L145.45454545454547,270.4L149.4949494949495,273.1L153.53535353535355,275.6L157.5757575757576,277.9L161.6161616161616,280L165.65656565656568,281.9L169.6969696969697,283.6L173.73737373737373,285.1L177.7777777777778,286.4L181.8181818181818,287.5L185.85858585858588,288.4L189.8989898989899,289.1L193.93939393939397,289.6L197.97979797979798,289.9L202.02020202020202,290L206.06060606060606,289.9L210.10101010101013,289.6L214.14141414141415,289.1L218.18181818181822,288.4L222.22222222222223,287.5L226.26262626262624,286.4L230.3030303030303,285.1L234.34343434343435,283.6L238.3838383838384,281.9L242.42424242424244,280L246.4646464646465,277.9L250.50505050505052,275.6L254.5454545454546,273.1L258.5858585858586,270.4L262.62626262626264,267.5L266.6666666666667,264.4L270.7070707070707,261.1L274.74747474747477,257.59999999999997L278.7878787878788,253.89999999999998L282.82828282828285,250L286.8686868686869,245.89999999999998L290.90909090909093,241.6L294.949494949495,237.09999999999997L298.989898989899,232.39999999999998L303.030303030303,227.5L307.0707070707071,222.39999999999998L311.11111111111114,217.1L315.1515151515152,211.59999999999997L319.1919191919192,205.89999999999998L323.2323232323232,200L327.27272727272725,193.90000000000003L331.31313131313135,187.5999999999999L335.3535353535354,181.09999999999997L339.3939393939394,174.39999999999998L343.4343434343434,167.5L347.47474747474746,160.40000000000003L351.51515151515156,153.0999999999999L355.5555555555556,145.59999999999994L359.5959595959596,137.89999999999998L363.6363636363636,130L367.67676767676767,121.9L371.71717171717177,113.59999999999991L375.75757575757575,105.09999999999994L379.7979797979798,96.39999999999998L383.83838383838383,87.5L387.87878787878793,78.39999999999986L391.919191919192,69.09999999999991L395.95959595959596,59.59999999999994L400,49.89999999999995L400,240L395.95959595959596,240L391.919191919192,240L387.87878787878793,240L383.83838383838383,240L379.7979797979798,240L375.75757575757575,240L371.71717171717177,240L367.67676767676767,240L363.6363636363636,240L359.5959595959596,240L355.5555555555556,240L351.51515151515156,240L347.47474747474746,240L343.4343434343434,240L339.3939393939394,240L335.3535353535354,240L331.31313131313135,240L327.27272727272725,240L323.2323232323232,240L319.1919191919192,240L315.1515151515152,240L311.11111111111114,240L307.0707070707071,240L303.030303030303,240L298.989898989899,240L294.949494949495,240L290.90909090909093,240L286.8686868686869,240L282.82828282828285,240L278.7878787878788,240L274.74747474747477,240L270.7070707070707,240.00000000000003L266.6666666666667,240L262.62626262626264,240L258.5858585858586,240L254.5454545454546,240.00000000000003L250.50505050505052,240.00000000000003L246.4646464646465,240L242.42424242424244,240L238.3838383838384,240L234.34343434343435,240.00000000000003L230.3030303030303,240.00000000000003L226.26262626262624,240L222.22222222222223,240L218.18181818181822,239.99999999999997L214.14141414141415,240.00000000000003L210.10101010101013,240.00000000000003L206.06060606060606,239.99999999999997L202.02020202020202,240L197.97979797979798,239.99999999999997L193.93939393939397,240L189.8989898989899,240.00000000000003L185.85858585858588,239.99999999999997L181.8181818181818,240L177.7777777777778,239.99999999999997L173.73737373737373,240.00000000000003L169.6969696969697,240.00000000000003L165.65656565656568,239.99999999999997L161.6161616161616,240L157.5757575757576,239.99999999999997L153.53535353535355,240L149.4949494949495,240L145.45454545454547,239.99999999999997L141.41414141414143,240L137.37373737373738,239.99999999999997L133.33333333333334,240L129.2929292929293,240L125.25252525252526,240L121.21212121212122,240L117.17171717171718,240L113.13131313131312,240L109.09090909090911,240L105.05050505050507,240L101.01010101010101,240L96.96969696969698,240L92.92929292929294,240L88.8888888888889,240L84.84848484848484,240L80.8080808080808,240L76.76767676767679,240L72.72727272727272,240L68.68686868686869,240L64.64646464646465,240L60.60606060606061,240L56.565656565656575,240L52.52525252525252,240L48.48484848484849,240L44.44444444444445,240L40.4040404040404,240L36.363636363636374,240L32.32323232323232,240L28.282828282828287,240L24.242424242424228,240L20.2020202020202,240L16.161616161616173,240L12.121212121212114,240L8.080808080808087,240L4.0404040404040265,240L0,240Z" fill="rgb(31,119,180)"/>
52
+ </g>
53
+ </g><g clip-path="url(#8c)"><clippath id="8c"><rect x="0" y="0" width="400" height="80"/>
54
+ </clippath><g><path d="M0,-360L4.0404040404040265,-350.1L8.080808080808087,-340.4L12.121212121212114,-330.90000000000003L16.161616161616173,-321.59999999999997L20.2020202020202,-312.5L24.242424242424228,-303.6L28.282828282828287,-294.9L32.32323232323232,-286.4L36.363636363636374,-278.1L40.4040404040404,-270L44.44444444444445,-262.1L48.48484848484849,-254.4L52.52525252525252,-246.90000000000003L56.565656565656575,-239.59999999999997L60.60606060606061,-232.5L64.64646464646465,-225.59999999999997L68.68686868686869,-218.89999999999998L72.72727272727272,-212.40000000000003L76.76767676767679,-206.09999999999997L80.8080808080808,-200L84.84848484848484,-194.10000000000002L88.8888888888889,-188.39999999999998L92.92929292929294,-182.89999999999998L96.96969696969698,-177.59999999999997L101.01010101010101,-172.5L105.05050505050507,-167.6L109.09090909090911,-162.89999999999998L113.13131313131312,-158.39999999999998L117.17171717171718,-154.1L121.21212121212122,-150L125.25252525252526,-146.1L129.2929292929293,-142.39999999999998L133.33333333333334,-138.89999999999998L137.37373737373738,-135.6L141.41414141414143,-132.5L145.45454545454547,-129.6L149.4949494949495,-126.89999999999999L153.53535353535355,-124.39999999999999L157.5757575757576,-122.1L161.6161616161616,-120L165.65656565656568,-118.1L169.6969696969697,-116.4L173.73737373737373,-114.9L177.7777777777778,-113.6L181.8181818181818,-112.5L185.85858585858588,-111.6L189.8989898989899,-110.9L193.93939393939397,-110.39999999999998L197.97979797979798,-110.1L202.02020202020202,-110L206.06060606060606,-110.1L210.10101010101013,-110.4L214.14141414141415,-110.9L218.18181818181822,-111.6L222.22222222222223,-112.5L226.26262626262624,-113.60000000000001L230.3030303030303,-114.9L234.34343434343435,-116.4L238.3838383838384,-118.10000000000001L242.42424242424244,-120L246.4646464646465,-122.10000000000001L250.50505050505052,-124.4L254.5454545454546,-126.9L258.5858585858586,-129.60000000000002L262.62626262626264,-132.5L266.6666666666667,-135.60000000000002L270.7070707070707,-138.9L274.74747474747477,-142.40000000000003L278.7878787878788,-146.10000000000002L282.82828282828285,-150L286.8686868686869,-154.10000000000002L290.90909090909093,-158.4L294.949494949495,-162.90000000000003L298.989898989899,-167.60000000000002L303.030303030303,-172.5L307.0707070707071,-177.60000000000002L311.11111111111114,-182.9L315.1515151515152,-188.40000000000003L319.1919191919192,-194.10000000000002L323.2323232323232,-200L327.27272727272725,-206.09999999999997L331.31313131313135,-212.4000000000001L335.3535353535354,-218.90000000000003L339.3939393939394,-225.60000000000002L343.4343434343434,-232.5L347.47474747474746,-239.59999999999997L351.51515151515156,-246.9000000000001L355.5555555555556,-254.40000000000006L359.5959595959596,-262.1L363.6363636363636,-270L367.67676767676767,-278.1L371.71717171717177,-286.4000000000001L375.75757575757575,-294.9000000000001L379.7979797979798,-303.6L383.83838383838383,-312.5L387.87878787878793,-321.60000000000014L391.919191919192,-330.9000000000001L395.95959595959596,-340.4000000000001L400,-350.1L400,-159.99999999999997L395.95959595959596,-160.00000000000003L391.919191919192,-160L387.87878787878793,-160L383.83838383838383,-160L379.7979797979798,-160L375.75757575757575,-160.00000000000003L371.71717171717177,-160L367.67676767676767,-160.00000000000003L363.6363636363636,-160L359.5959595959596,-160L355.5555555555556,-160L351.51515151515156,-160L347.47474747474746,-160L343.4343434343434,-160L339.3939393939394,-160L335.3535353535354,-160L331.31313131313135,-160L327.27272727272725,-160L323.2323232323232,-160L319.1919191919192,-160L315.1515151515152,-160L311.11111111111114,-160L307.0707070707071,-160L303.030303030303,-160L298.989898989899,-160L294.949494949495,-160L290.90909090909093,-160L286.8686868686869,-160L282.82828282828285,-160L278.7878787878788,-160L274.74747474747477,-160L270.7070707070707,-160L266.6666666666667,-160L262.62626262626264,-160L258.5858585858586,-160L254.5454545454546,-160L250.50505050505052,-160L246.4646464646465,-160L242.42424242424244,-160L238.3838383838384,-160L234.34343434343435,-160L230.3030303030303,-160L226.26262626262624,-160L222.22222222222223,-160L218.18181818181822,-160L214.14141414141415,-160L210.10101010101013,-160L206.06060606060606,-160L202.02020202020202,-160L197.97979797979798,-160L193.93939393939397,-160L189.8989898989899,-160L185.85858585858588,-160L181.8181818181818,-160L177.7777777777778,-160L173.73737373737373,-160L169.6969696969697,-160L165.65656565656568,-160L161.6161616161616,-160L157.5757575757576,-160L153.53535353535355,-160L149.4949494949495,-160L145.45454545454547,-160L141.41414141414143,-160L137.37373737373738,-160L133.33333333333334,-160L129.2929292929293,-160L125.25252525252526,-160L121.21212121212122,-160L117.17171717171718,-160L113.13131313131312,-160L109.09090909090911,-160L105.05050505050507,-160L101.01010101010101,-160L96.96969696969698,-160L92.92929292929294,-160L88.8888888888889,-160L84.84848484848484,-160L80.8080808080808,-160L76.76767676767679,-160L72.72727272727272,-160L68.68686868686869,-160L64.64646464646465,-160L60.60606060606061,-160L56.565656565656575,-160L52.52525252525252,-160L48.48484848484849,-160L44.44444444444445,-160.00000000000003L40.4040404040404,-160L36.363636363636374,-160.00000000000003L32.32323232323232,-159.99999999999997L28.282828282828287,-160L24.242424242424228,-160L20.2020202020202,-160L16.161616161616173,-160L12.121212121212114,-160L8.080808080808087,-159.99999999999997L4.0404040404040265,-159.99999999999997L0,-160Z" fill="rgb(214,39,40)"/>
55
+ </g>
56
+ </g>
57
+ </g>
58
+ </g>
59
+ </g>
60
+ </svg>
61
+ EOF
62
+ @rv_svg=Nokogiri::XML(@vis.to_svg)
63
+ @pv_svg=Nokogiri::XML(html_out)
64
+ end
65
+
66
+ it "should render correct number of clipaths" do
67
+
68
+ @rv_svg.xpath("//xmlns:clipPath[@id]").size.should eq @pv_svg.xpath("//clippath[@id]").size
69
+ end
70
+ it "should render equal paths" do
71
+ pv_paths=@pv_svg.xpath("//path")
72
+ @rv_svg.xpath("//xmlns:path").each_with_index {|rv_path,i|
73
+ rv_path.should have_path_data_close_to pv_paths[i]['d']
74
+ rv_path['fill'].should eq pv_paths[i]['fill']
75
+ }
76
+ end
77
+ end
78
+ end
@@ -21,8 +21,7 @@ describe Rubyvis::Layout::Stack do
21
21
  x=@x
22
22
  y=@y
23
23
  @data=[[1,3,2],[2,1,3]]
24
- @stack.
25
- layers(@data).
24
+ @stack.layers(@data).
26
25
  x(lambda {|d| x.scale(index)}).
27
26
  y(lambda {|d| y.scale(d)}).layer.add(Rubyvis::Area)
28
27
  @vis.render
@@ -45,8 +44,7 @@ describe Rubyvis::Layout::Stack do
45
44
  x=@x
46
45
  y=@y
47
46
  @data=[{:first=>1,:second=>2},{:first=>3,:second=>1},{:first=>2,:second=>3}]
48
- @stack.
49
- layers([:first,:second]).
47
+ @stack.layers([:first,:second]).
50
48
  values(@data).
51
49
  x(lambda {|d| x.scale(index)}).
52
50
  y(lambda {|d,dd| y.scale(d[dd])}).layer.add(Rubyvis::Area)
@@ -67,4 +65,4 @@ describe Rubyvis::Layout::Stack do
67
65
 
68
66
  end
69
67
  end
70
- end
68
+ end
data/web/index.haml CHANGED
@@ -71,18 +71,6 @@
71
71
  /[if IE]
72
72
  %embed{:src=>"examples/1_basic_1a_bar_rbp_api.svg" ,:width=>"150", :height=>"150"}
73
73
  %object{:data=>"examples/1_basic_1a_bar_rbp_api.svg", :type=>"image/svg+xml", :width=>150,:height=>150}
74
- .examples_div
75
- %h2 Examples
76
- %p
77
- Several based on
78
- %a{:href=>"http://vis.stanford.edu/protovis/ex/"}Protovis gallery
79
- .examples
80
- - examples.each_pair do |name,page|
81
- .example
82
- .name
83
- %a{:href=>"examples/"+name+".html"}=page.title
84
- .image
85
- %img{:src=>"examples/"+name+".png"}
86
74
  .resources
87
75
  %h2 Resources
88
76
  %ul
@@ -102,6 +90,26 @@
102
90
  API documentation on
103
91
  %a{:href=>'http://rubyvis.rubyforge.org/rubyvis/'}
104
92
  http://rubyvis.rubyforge.org/rubyvis/
93
+ .adsense_1
94
+ :javascript
95
+ google_ad_client = "ca-pub-8946586062292381";
96
+ /* rubyvis_1 */
97
+ google_ad_slot = "8253377596";
98
+ google_ad_width = 728;
99
+ google_ad_height = 90;
100
+ %script{:type=>'text/javascript', :src=>"http://pagead2.googlesyndication.com/pagead/show_ads.js"}
101
+ .examples_div
102
+ %h2 Examples
103
+ %p
104
+ Several based on
105
+ %a{:href=>"http://vis.stanford.edu/protovis/ex/"}Protovis gallery
106
+ .examples
107
+ - examples.each_pair do |name,page|
108
+ .example
109
+ .name
110
+ %a{:href=>"examples/"+name+".html"}=page.title
111
+ .image
112
+ %img{:src=>"examples/"+name+".png"}
105
113
  :javascript
106
114
  var _gaq = _gaq || [];
107
115
  _gaq.push(['_setAccount', 'UA-5764936-8']);
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyvis
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- - 4
10
- version: 0.3.4
9
+ - 5
10
+ version: 0.3.5
11
11
  platform: ruby
12
12
  authors:
13
13
  - Claudio Bustos
@@ -36,7 +36,7 @@ cert_chain:
36
36
  rpP0jjs0
37
37
  -----END CERTIFICATE-----
38
38
 
39
- date: 2010-12-11 00:00:00 -03:00
39
+ date: 2010-12-20 00:00:00 -03:00
40
40
  default_executable:
41
41
  dependencies:
42
42
  - !ruby/object:Gem::Dependency
@@ -143,6 +143,7 @@ files:
143
143
  - examples/2_medium/censo_agropecuario/census_treemap.rb
144
144
  - examples/2_medium/censo_agropecuario/create_data.rb
145
145
  - examples/2_medium/censo_agropecuario/resultset.csv
146
+ - examples/2_medium/horizon.rb
146
147
  - examples/2_medium/nested_grid.rb
147
148
  - examples/3_pv_conventional/area.rb
148
149
  - examples/3_pv_conventional/bar_column_chart.rb
@@ -170,6 +171,8 @@ files:
170
171
  - examples/5_pv_hierarchies/node_link_tree.rb
171
172
  - examples/5_pv_hierarchies/sunburst.rb
172
173
  - examples/5_pv_hierarchies/treemap.rb
174
+ - examples/6_pv_networks/arc.rb
175
+ - examples/6_pv_networks/miserables_data.rb
173
176
  - lib/rubyvis.rb
174
177
  - lib/rubyvis/color/color.rb
175
178
  - lib/rubyvis/color/colors.rb
@@ -182,9 +185,11 @@ files:
182
185
  - lib/rubyvis/internals.rb
183
186
  - lib/rubyvis/javascript_behaviour.rb
184
187
  - lib/rubyvis/layout.rb
188
+ - lib/rubyvis/layout/arc.rb
185
189
  - lib/rubyvis/layout/cluster.rb
186
190
  - lib/rubyvis/layout/grid.rb
187
191
  - lib/rubyvis/layout/hierarchy.rb
192
+ - lib/rubyvis/layout/horizon.rb
188
193
  - lib/rubyvis/layout/indent.rb
189
194
  - lib/rubyvis/layout/network.rb
190
195
  - lib/rubyvis/layout/pack.rb
@@ -227,11 +232,13 @@ files:
227
232
  - spec/anchor_spec.rb
228
233
  - spec/area_spec.rb
229
234
  - spec/bar_spec.rb
235
+ - spec/color_spec.rb
230
236
  - spec/dom_spec.rb
231
237
  - spec/histogram_spec.rb
232
238
  - spec/internal_spec.rb
233
239
  - spec/javascript_behaviour_spec.rb
234
240
  - spec/label_spec.rb
241
+ - spec/layout_horizon_spec.rb
235
242
  - spec/layout_stack_spec.rb
236
243
  - spec/line_spec.rb
237
244
  - spec/mark_spec.rb
metadata.gz.sig CHANGED
Binary file