rubyvis 0.3.6 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. data.tar.gz.sig +0 -0
  2. data/History.txt +16 -0
  3. data/Manifest.txt +61 -0
  4. data/README.txt +9 -7
  5. data/Rakefile +1 -1
  6. data/lib/rubyvis.rb +3 -17
  7. data/lib/rubyvis/color/color.rb +11 -13
  8. data/lib/rubyvis/flatten.rb +5 -7
  9. data/lib/rubyvis/layout/stack.rb +15 -10
  10. data/lib/rubyvis/mark.rb +10 -2
  11. data/lib/rubyvis/mark/area.rb +5 -3
  12. data/lib/rubyvis/mark/line.rb +4 -3
  13. data/lib/rubyvis/mark/panel.rb +8 -3
  14. data/lib/rubyvis/mark/rule.rb +1 -0
  15. data/lib/rubyvis/scene/svg_area.rb +17 -17
  16. data/lib/rubyvis/scene/svg_curve.rb +8 -5
  17. data/lib/rubyvis/scene/svg_line.rb +32 -29
  18. data/lib/rubyvis/scene/svg_scene.rb +3 -5
  19. data/lib/rubyvis/scene/svg_wedge.rb +4 -3
  20. data/lib/rubyvis/vector.rb +104 -0
  21. data/spec/anchor_spec.rb +29 -0
  22. data/spec/area_spec.rb +83 -0
  23. data/spec/bar_spec.rb +3 -0
  24. data/spec/color_spec.rb +13 -1
  25. data/spec/dot_spec.rb +41 -0
  26. data/spec/fixtures/anchor.html +25 -0
  27. data/spec/fixtures/anchor.svg +1 -0
  28. data/spec/fixtures/area-segmented.html +29 -0
  29. data/spec/fixtures/area_interpolation.html +66 -0
  30. data/spec/fixtures/area_interpolation.svg +1 -0
  31. data/spec/fixtures/area_segmented.svg +1 -0
  32. data/spec/fixtures/dot-anchor.html +33 -0
  33. data/spec/fixtures/dot_anchor.svg +1 -0
  34. data/spec/fixtures/layers.js +28 -0
  35. data/spec/fixtures/layout_arc.svg +1 -0
  36. data/spec/fixtures/layout_cluster.html +39 -0
  37. data/spec/fixtures/layout_cluster.svg +1 -0
  38. data/spec/fixtures/layout_cluster_left_group_2.html +39 -0
  39. data/spec/fixtures/layout_cluster_left_group_2.svg +1 -0
  40. data/spec/fixtures/layout_grid.html +34 -0
  41. data/spec/fixtures/layout_grid.svg +1 -0
  42. data/spec/fixtures/layout_horizon.svg +24 -0
  43. data/spec/fixtures/layout_indent.html +39 -0
  44. data/spec/fixtures/layout_indent.svg +1 -0
  45. data/spec/fixtures/layout_matrix.svg +1 -0
  46. data/spec/fixtures/layout_pack.html +38 -0
  47. data/spec/fixtures/layout_pack.svg +1 -0
  48. data/spec/fixtures/layout_partition_fill.html +40 -0
  49. data/spec/fixtures/layout_partition_fill.svg +32 -0
  50. data/spec/fixtures/layout_tree_orient_left.html +36 -0
  51. data/spec/fixtures/layout_tree_orient_left.svg +1 -0
  52. data/spec/fixtures/layout_tree_orient_radial_breadth_20.html +39 -0
  53. data/spec/fixtures/layout_tree_orient_radial_breadth_20.svg +1 -0
  54. data/spec/fixtures/layout_tree_orient_top.svg +1 -0
  55. data/spec/fixtures/layout_treemap.svg +1 -0
  56. data/spec/fixtures/line_interpolation.html +63 -0
  57. data/spec/fixtures/line_interpolation.svg +1 -0
  58. data/spec/fixtures/line_interpolation_segmented.html +65 -0
  59. data/spec/fixtures/line_interpolation_segmented.svg +1 -0
  60. data/spec/fixtures/protovis-r3.3.js +287 -0
  61. data/spec/fixtures/rule-anchor.html +33 -0
  62. data/spec/fixtures/rule_anchor.svg +1 -0
  63. data/spec/fixtures/stack-expand.html +41 -0
  64. data/spec/fixtures/stack-silohouette.html +41 -0
  65. data/spec/fixtures/stack-wiggle.html +41 -0
  66. data/spec/fixtures/stack_expand.svg +1 -0
  67. data/spec/fixtures/stack_silohouette.svg +1 -0
  68. data/spec/fixtures/stack_wiggle.svg +1 -0
  69. data/spec/fixtures/svgscene.html +26 -0
  70. data/spec/fixtures/wedge-anchor.html +33 -0
  71. data/spec/fixtures/wedge-donut.html +35 -0
  72. data/spec/fixtures/wedge_anchor.svg +1 -0
  73. data/spec/fixtures/wedge_donut.svg +1 -0
  74. data/spec/flatten_spec.rb +47 -0
  75. data/spec/layout_arc_spec.rb +7 -26
  76. data/spec/layout_cluster_spec.rb +52 -0
  77. data/spec/layout_grid_spec.rb +40 -0
  78. data/spec/layout_horizon_spec.rb +6 -25
  79. data/spec/layout_indent_spec.rb +53 -0
  80. data/spec/layout_matrix_spec.rb +25 -52
  81. data/spec/layout_pack_spec.rb +49 -0
  82. data/spec/layout_partition_spec.rb +45 -0
  83. data/spec/layout_stack_spec.rb +60 -0
  84. data/spec/layout_tree_spec.rb +56 -0
  85. data/spec/layout_treemap_spec.rb +41 -0
  86. data/spec/line_spec.rb +118 -0
  87. data/spec/mark_spec.rb +4 -0
  88. data/spec/panel_spec.rb +12 -1
  89. data/spec/rule_spec.rb +34 -0
  90. data/spec/spec_helper.rb +158 -3
  91. data/spec/vector_spec.rb +36 -0
  92. data/spec/wedge_spec.rb +66 -0
  93. metadata +67 -14
  94. metadata.gz.sig +0 -0
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="410" height="430"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="199.99999999999997" cy="0" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="33.33333333333333" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="8.333333333333332" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="25" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="41.666666666666664" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="58.33333333333333" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="75" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="91.66666666666666" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="108.33333333333333" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="125" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="166.66666666666666" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="141.66666666666666" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="158.33333333333331" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="175" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="191.66666666666666" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="233.33333333333331" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="208.33333333333331" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="225" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="241.66666666666666" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="258.3333333333333" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="300" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="275" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="291.66666666666663" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="308.3333333333333" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="325" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="366.66666666666663" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="341.66666666666663" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="358.3333333333333" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="375" cy="400" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="391.66666666666663" cy="400" r="4.5"/></g><g><g><path d="M33.33333333333333,200V0H199.99999999999997" stroke="rgb(204,204,204)"/></g><g><path d="M8.333333333333332,400V200H33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M25,400V200H33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M41.666666666666664,400V200H33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M58.33333333333333,400V200H33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M100,200V0H199.99999999999997" stroke="rgb(204,204,204)"/></g><g><path d="M75,400V200H100" stroke="rgb(204,204,204)"/></g><g><path d="M91.66666666666666,400V200H100" stroke="rgb(204,204,204)"/></g><g><path d="M108.33333333333333,400V200H100" stroke="rgb(204,204,204)"/></g><g><path d="M125,400V200H100" stroke="rgb(204,204,204)"/></g><g><path d="M166.66666666666666,200V0H199.99999999999997" stroke="rgb(204,204,204)"/></g><g><path d="M141.66666666666666,400V200H166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M158.33333333333331,400V200H166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M175,400V200H166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M191.66666666666666,400V200H166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M233.33333333333331,200V0H199.99999999999997" stroke="rgb(204,204,204)"/></g><g><path d="M208.33333333333331,400V200H233.33333333333331" stroke="rgb(204,204,204)"/></g><g><path d="M225,400V200H233.33333333333331" stroke="rgb(204,204,204)"/></g><g><path d="M241.66666666666666,400V200H233.33333333333331" stroke="rgb(204,204,204)"/></g><g><path d="M258.3333333333333,400V200H233.33333333333331" stroke="rgb(204,204,204)"/></g><g><path d="M300,200V0H199.99999999999997" stroke="rgb(204,204,204)"/></g><g><path d="M275,400V200H300" stroke="rgb(204,204,204)"/></g><g><path d="M291.66666666666663,400V200H300" stroke="rgb(204,204,204)"/></g><g><path d="M308.3333333333333,400V200H300" stroke="rgb(204,204,204)"/></g><g><path d="M325,400V200H300" stroke="rgb(204,204,204)"/></g><g><path d="M366.66666666666663,200V0H199.99999999999997" stroke="rgb(204,204,204)"/></g><g><path d="M341.66666666666663,400V200H366.66666666666663" stroke="rgb(204,204,204)"/></g><g><path d="M358.3333333333333,400V200H366.66666666666663" stroke="rgb(204,204,204)"/></g><g><path d="M375,400V200H366.66666666666663" stroke="rgb(204,204,204)"/></g><g><path d="M391.66666666666663,400V200H366.66666666666663" stroke="rgb(204,204,204)"/></g></g><g><text pointer-events="none" x="7" dy="0.35em" transform="translate(200) rotate(270)" fill="rgb(0,0,0)">test</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(33.3333, 200) rotate(270)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(8.33333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(25, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(41.6667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(58.3333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(100, 200) rotate(270)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(75, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(91.6667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(108.333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(125, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(166.667, 200) rotate(270)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(141.667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(158.333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(175, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(191.667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(233.333, 200) rotate(270)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(208.333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(225, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(241.667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(258.333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(300, 200) rotate(270)" fill="rgb(0,0,0)">e</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(275, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(291.667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(308.333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(325, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(366.667, 200) rotate(270)" fill="rgb(0,0,0)">f</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(341.667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(358.333, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(375, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(391.667, 400) rotate(270)" fill="rgb(0,0,0)" text-anchor="end">d</text></g></g></svg>
@@ -0,0 +1,39 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Layout Partition</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Layout Partition</h1>
8
+ <script type="text/javascript">
9
+ color=pv.Colors.category19()
10
+ w=400
11
+ h=400
12
+
13
+ subtree={a:1,b:2,c:3,d:4}
14
+
15
+ hier_nodes=pv.dom({a:subtree,b:subtree, c:subtree, d:subtree,e:subtree,f:subtree}).root("test").nodes()
16
+
17
+
18
+ vis = new pv.Panel()
19
+ .width(w)
20
+ .height(h)
21
+ .top(20)
22
+ .bottom(10)
23
+ .left(10)
24
+
25
+ partition= vis.add(pv.Layout.Cluster).
26
+ nodes(hier_nodes).orient("left").group(2)
27
+
28
+ partition.node.add(pv.Dot).
29
+ fillStyle(function(d) {return color(d.nodeValue);}).
30
+ strokeStyle("black").
31
+ lineWidth(1).
32
+ antialias(false)
33
+ partition.link.add(pv.Line)
34
+ partition.label.add(pv.Label).
35
+ text(function(d) {return d.nodeName})
36
+ vis.render()
37
+ </script>
38
+ </body>
39
+ </html>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="410" height="430"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="0" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="200" cy="33.33333333333333" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="16.666666666666664" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="27.77777777777778" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="38.888888888888886" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="50" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="200" cy="99.99999999999999" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="83.33333333333333" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="94.44444444444444" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="105.55555555555556" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="116.66666666666666" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="200" cy="166.66666666666666" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="150" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="161.1111111111111" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="172.2222222222222" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="183.33333333333331" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="200" cy="233.33333333333334" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="216.66666666666666" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="227.77777777777777" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="238.88888888888889" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="250" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="200" cy="299.99999999999994" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="283.3333333333333" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="294.4444444444444" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="305.55555555555554" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="316.66666666666663" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="200" cy="366.66666666666663" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="350" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="361.1111111111111" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="372.2222222222222" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="400" cy="383.3333333333333" r="4.5"/></g><g><g><path d="M200,33.33333333333333H0V200" stroke="rgb(204,204,204)"/></g><g><path d="M400,16.666666666666664H200V33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M400,27.77777777777778H200V33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M400,38.888888888888886H200V33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M400,50H200V33.33333333333333" stroke="rgb(204,204,204)"/></g><g><path d="M200,99.99999999999999H0V200" stroke="rgb(204,204,204)"/></g><g><path d="M400,83.33333333333333H200V99.99999999999999" stroke="rgb(204,204,204)"/></g><g><path d="M400,94.44444444444444H200V99.99999999999999" stroke="rgb(204,204,204)"/></g><g><path d="M400,105.55555555555556H200V99.99999999999999" stroke="rgb(204,204,204)"/></g><g><path d="M400,116.66666666666666H200V99.99999999999999" stroke="rgb(204,204,204)"/></g><g><path d="M200,166.66666666666666H0V200" stroke="rgb(204,204,204)"/></g><g><path d="M400,150H200V166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M400,161.1111111111111H200V166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M400,172.2222222222222H200V166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M400,183.33333333333331H200V166.66666666666666" stroke="rgb(204,204,204)"/></g><g><path d="M200,233.33333333333334H0V200" stroke="rgb(204,204,204)"/></g><g><path d="M400,216.66666666666666H200V233.33333333333334" stroke="rgb(204,204,204)"/></g><g><path d="M400,227.77777777777777H200V233.33333333333334" stroke="rgb(204,204,204)"/></g><g><path d="M400,238.88888888888889H200V233.33333333333334" stroke="rgb(204,204,204)"/></g><g><path d="M400,250H200V233.33333333333334" stroke="rgb(204,204,204)"/></g><g><path d="M200,299.99999999999994H0V200" stroke="rgb(204,204,204)"/></g><g><path d="M400,283.3333333333333H200V299.99999999999994" stroke="rgb(204,204,204)"/></g><g><path d="M400,294.4444444444444H200V299.99999999999994" stroke="rgb(204,204,204)"/></g><g><path d="M400,305.55555555555554H200V299.99999999999994" stroke="rgb(204,204,204)"/></g><g><path d="M400,316.66666666666663H200V299.99999999999994" stroke="rgb(204,204,204)"/></g><g><path d="M200,366.66666666666663H0V200" stroke="rgb(204,204,204)"/></g><g><path d="M400,350H200V366.66666666666663" stroke="rgb(204,204,204)"/></g><g><path d="M400,361.1111111111111H200V366.66666666666663" stroke="rgb(204,204,204)"/></g><g><path d="M400,372.2222222222222H200V366.66666666666663" stroke="rgb(204,204,204)"/></g><g><path d="M400,383.3333333333333H200V366.66666666666663" stroke="rgb(204,204,204)"/></g></g><g><text pointer-events="none" x="-7" dy="0.35em" transform="translate(0, 200) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">test</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(200, 33.3333) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 16.6667)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 27.7778)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 38.8889)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 50)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(200, 100) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 83.3333)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 94.4444)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 105.556)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 116.667)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(200, 166.667) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 150)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 161.111)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 172.222)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 183.333)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(200, 233.333) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 216.667)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 227.778)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 238.889)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 250)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(200, 300) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">e</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 283.333)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 294.444)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 305.556)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 316.667)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(200, 366.667) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">f</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 350)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 361.111)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 372.222)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(400, 383.333)" fill="rgb(0,0,0)">d</text></g></g></svg>
@@ -0,0 +1,34 @@
1
+ <html>
2
+ <head>
3
+ <title>Grid Layout</title>
4
+ <script type="text/javascript" src="protovis-d3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <script type="text/javascript+protovis">
8
+
9
+ var vis = new pv.Panel()
10
+ .data(["A"])
11
+ .width(800)
12
+ .height(800)
13
+ .margin(10)
14
+ .fillStyle("#eee")
15
+ .strokeStyle("#ccc");
16
+
17
+ vis.add(pv.Layout.Grid)
18
+ .rows(3)
19
+ .cols(3)
20
+ .cell.add(pv.Layout.Grid)
21
+ .rows(pv.index)
22
+ .cols(pv.index)
23
+ .cell.add(pv.Bar)
24
+ .strokeStyle("#fff")
25
+ .anchor("center").add(pv.Label)
26
+ .textStyle("rgba(255, 255, 255, .4)")
27
+ .font("24px sans");
28
+
29
+ vis.render();
30
+
31
+ </script>
32
+ </body>
33
+ </html>
34
+
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="820" height="820"><rect x="10" y="10" width="800" height="800" fill="rgb(238,238,238)"/><g transform="translate(10, 10)"><g><g/><g/><g transform="translate(266.667)"><rect width="266.6666666666667" height="266.6666666666667" fill="rgb(31,119,180)" stroke="rgb(255,255,255)"/></g><g transform="translate(266.667)"><text pointer-events="none" dy="0.35em" transform="translate(133.333, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(533.333)"><rect width="133.33333333333334" height="133.33333333333334" fill="rgb(174,199,232)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" width="133.33333333333334" height="133.33333333333334" fill="rgb(174,199,232)" stroke="rgb(255,255,255)"/><rect y="133.33333333333334" width="133.33333333333334" height="133.33333333333334" fill="rgb(174,199,232)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="133.33333333333334" width="133.33333333333334" height="133.33333333333334" fill="rgb(174,199,232)" stroke="rgb(255,255,255)"/></g><g transform="translate(533.333)"><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(0, 266.667)"><rect width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect y="88.8888888888889" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="88.8888888888889" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="88.8888888888889" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect y="177.7777777777778" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="177.7777777777778" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="177.7777777777778" width="88.8888888888889" height="88.8888888888889" fill="rgb(255,127,14)" stroke="rgb(255,255,255)"/></g><g transform="translate(0, 266.667)"><text pointer-events="none" dy="0.35em" transform="translate(44.4444, 44.4444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 44.4444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(222.222, 44.4444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(44.4444, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(222.222, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(44.4444, 222.222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 222.222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(222.222, 222.222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(266.667, 266.667)"><rect width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="200" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect y="66.66666666666667" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="66.66666666666667" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="66.66666666666667" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="200" y="66.66666666666667" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect y="133.33333333333334" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="133.33333333333334" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="133.33333333333334" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="200" y="133.33333333333334" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect y="200" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="200" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="200" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/><rect x="200" y="200" width="66.66666666666667" height="66.66666666666667" fill="rgb(255,187,120)" stroke="rgb(255,255,255)"/></g><g transform="translate(266.667, 266.667)"><text pointer-events="none" dy="0.35em" transform="translate(33.3333, 33.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(100, 33.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(166.667, 33.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(233.333, 33.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(33.3333, 100)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(100, 100)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(166.667, 100)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(233.333, 100)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(33.3333, 166.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(100, 166.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(166.667, 166.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(233.333, 166.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(33.3333, 233.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(100, 233.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(166.667, 233.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(233.333, 233.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(533.333, 266.667)"><rect width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="53.333333333333336" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="106.66666666666667" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="160" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="213.33333333333334" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect y="53.333333333333336" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="53.333333333333336" y="53.333333333333336" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="106.66666666666667" y="53.333333333333336" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="160" y="53.333333333333336" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="213.33333333333334" y="53.333333333333336" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect y="106.66666666666667" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="53.333333333333336" y="106.66666666666667" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="106.66666666666667" y="106.66666666666667" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="160" y="106.66666666666667" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="213.33333333333334" y="106.66666666666667" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect y="160" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="53.333333333333336" y="160" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="106.66666666666667" y="160" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="160" y="160" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="213.33333333333334" y="160" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect y="213.33333333333334" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="53.333333333333336" y="213.33333333333334" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="106.66666666666667" y="213.33333333333334" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="160" y="213.33333333333334" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/><rect x="213.33333333333334" y="213.33333333333334" width="53.333333333333336" height="53.333333333333336" fill="rgb(44,160,44)" stroke="rgb(255,255,255)"/></g><g transform="translate(533.333, 266.667)"><text pointer-events="none" dy="0.35em" transform="translate(26.6667, 26.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(80, 26.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 26.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(186.667, 26.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(240, 26.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(26.6667, 80)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(80, 80)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 80)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(186.667, 80)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(240, 80)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(26.6667, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(80, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(186.667, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(240, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(26.6667, 186.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(80, 186.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 186.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(186.667, 186.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(240, 186.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(26.6667, 240)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(80, 240)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 240)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(186.667, 240)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(240, 240)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(0, 533.333)"><rect width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect y="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="44.44444444444445" y="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="222.22222222222226" y="44.44444444444445" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect y="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="44.44444444444445" y="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="222.22222222222226" y="88.8888888888889" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect y="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="44.44444444444445" y="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="222.22222222222226" y="133.33333333333334" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect y="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="44.44444444444445" y="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="222.22222222222226" y="177.7777777777778" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect y="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="44.44444444444445" y="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="88.8888888888889" y="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="177.7777777777778" y="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/><rect x="222.22222222222226" y="222.22222222222226" width="44.44444444444445" height="44.44444444444445" fill="rgb(152,223,138)" stroke="rgb(255,255,255)"/></g><g transform="translate(0, 533.333)"><text pointer-events="none" dy="0.35em" transform="translate(22.2222, 22.2222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 22.2222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(111.111, 22.2222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(155.556, 22.2222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 22.2222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(244.444, 22.2222)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(22.2222, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(111.111, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(155.556, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(244.444, 66.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(22.2222, 111.111)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 111.111)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(111.111, 111.111)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(155.556, 111.111)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 111.111)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(244.444, 111.111)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(22.2222, 155.556)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 155.556)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(111.111, 155.556)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(155.556, 155.556)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 155.556)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(244.444, 155.556)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(22.2222, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(111.111, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(155.556, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(244.444, 200)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(22.2222, 244.444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(66.6667, 244.444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(111.111, 244.444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(155.556, 244.444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(200, 244.444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(244.444, 244.444)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(266.667, 533.333)"><rect width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" y="38.095238095238095" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" y="76.19047619047619" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" y="114.28571428571428" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" y="152.38095238095238" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" y="190.47619047619048" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="38.095238095238095" y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="76.19047619047619" y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="114.28571428571428" y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="152.38095238095238" y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="190.47619047619048" y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/><rect x="228.57142857142856" y="228.57142857142856" width="38.095238095238095" height="38.095238095238095" fill="rgb(214,39,40)" stroke="rgb(255,255,255)"/></g><g transform="translate(266.667, 533.333)"><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 19.0476)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 57.1429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 95.2381)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 133.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 171.429)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 209.524)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(19.0476, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(57.1429, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(95.2381, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(133.333, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(171.429, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(209.524, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(247.619, 247.619)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g><g transform="translate(533.333, 533.333)"><rect width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="33.333333333333336" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="66.66666666666667" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="100" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="133.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="166.66666666666669" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="200" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="33.333333333333336" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="66.66666666666667" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="100" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="133.33333333333334" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="166.66666666666669" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="200" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/><rect x="233.33333333333334" y="233.33333333333334" width="33.333333333333336" height="33.333333333333336" fill="rgb(255,152,150)" stroke="rgb(255,255,255)"/></g><g transform="translate(533.333, 533.333)"><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 16.6667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 50)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 83.3333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 116.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 150)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 183.333)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 216.667)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(16.6667, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(50, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(116.667, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(150, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(183.333, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(216.667, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text><text pointer-events="none" dy="0.35em" transform="translate(250, 250)" fill="rgb(255,255,255)" fill-opacity="0.4" text-anchor="middle" style="font: 24px sans;">A</text></g></g></g><rect x="10" y="10" width="800" height="800" stroke="rgb(204,204,204)"/></svg>
@@ -0,0 +1,24 @@
1
+ <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"/>
2
+ </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)"/>
3
+ </g>
4
+ </g><g clip-path="url(#88)"><clippath id="88"><rect x="0" y="0" width="400" height="80"/>
5
+ </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)"/>
6
+ </g>
7
+ </g><g clip-path="url(#89)"><clippath id="89"><rect x="0" y="0" width="400" height="80"/>
8
+ </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)"/>
9
+ </g>
10
+ </g><g clip-path="url(#8a)"><clippath id="8a"><rect x="0" y="0" width="400" height="80"/>
11
+ </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)"/>
12
+ </g>
13
+ </g><g clip-path="url(#8b)"><clippath id="8b"><rect x="0" y="0" width="400" height="80"/>
14
+ </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)"/>
15
+ </g>
16
+ </g><g clip-path="url(#8c)"><clippath id="8c"><rect x="0" y="0" width="400" height="80"/>
17
+ </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)"/>
18
+ </g>
19
+ </g>
20
+ </g>
21
+ </g>
22
+ </g>
23
+ </svg>
24
+
@@ -0,0 +1,39 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Layout Indent</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Layout Indent</h1>
8
+ <script type="text/javascript">
9
+ color=pv.Colors.category19()
10
+ w=200
11
+ h=200
12
+
13
+ subtree={a:1,b:2,c:3,d:4}
14
+
15
+ hier_nodes=pv.dom({a:subtree,b:subtree, c:subtree, d:subtree,e:subtree,f:subtree}).root("test").nodes()
16
+
17
+
18
+ vis = new pv.Panel()
19
+ .width(w)
20
+ .height(h)
21
+ .top(20)
22
+ .bottom(10)
23
+ .left(10)
24
+
25
+ indent = vis.add(pv.Layout.Indent).
26
+ nodes(hier_nodes).breadth(10)
27
+
28
+ indent.node.add(pv.Dot).
29
+ fillStyle(function(d) {return color(d.nodeValue);}).
30
+ strokeStyle("black").
31
+ lineWidth(1).
32
+ antialias(false)
33
+ indent.link.add(pv.Line)
34
+ indent.label.add(pv.Label).
35
+ text(function(d) {return d.nodeName})
36
+ vis.render()
37
+ </script>
38
+ </body>
39
+ </html>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="210" height="230"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="15" cy="10" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="30" cy="20" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="30" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="40" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="50" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="60" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="30" cy="70" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="80" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="90" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="100" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="110" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="30" cy="120" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="130" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="140" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="150" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="160" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="30" cy="170" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="180" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="190" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="200" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="210" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="30" cy="220" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="230" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="240" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="250" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="260" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="30" cy="270" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="280" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="290" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="300" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="45" cy="310" r="4.5"/></g><g><g><path d="M30,20H15V10" stroke="rgb(204,204,204)"/></g><g><path d="M45,30H30V20" stroke="rgb(204,204,204)"/></g><g><path d="M45,40H30V20" stroke="rgb(204,204,204)"/></g><g><path d="M45,50H30V20" stroke="rgb(204,204,204)"/></g><g><path d="M45,60H30V20" stroke="rgb(204,204,204)"/></g><g><path d="M30,70H15V10" stroke="rgb(204,204,204)"/></g><g><path d="M45,80H30V70" stroke="rgb(204,204,204)"/></g><g><path d="M45,90H30V70" stroke="rgb(204,204,204)"/></g><g><path d="M45,100H30V70" stroke="rgb(204,204,204)"/></g><g><path d="M45,110H30V70" stroke="rgb(204,204,204)"/></g><g><path d="M30,120H15V10" stroke="rgb(204,204,204)"/></g><g><path d="M45,130H30V120" stroke="rgb(204,204,204)"/></g><g><path d="M45,140H30V120" stroke="rgb(204,204,204)"/></g><g><path d="M45,150H30V120" stroke="rgb(204,204,204)"/></g><g><path d="M45,160H30V120" stroke="rgb(204,204,204)"/></g><g><path d="M30,170H15V10" stroke="rgb(204,204,204)"/></g><g><path d="M45,180H30V170" stroke="rgb(204,204,204)"/></g><g><path d="M45,190H30V170" stroke="rgb(204,204,204)"/></g><g><path d="M45,200H30V170" stroke="rgb(204,204,204)"/></g><g><path d="M45,210H30V170" stroke="rgb(204,204,204)"/></g><g><path d="M30,220H15V10" stroke="rgb(204,204,204)"/></g><g><path d="M45,230H30V220" stroke="rgb(204,204,204)"/></g><g><path d="M45,240H30V220" stroke="rgb(204,204,204)"/></g><g><path d="M45,250H30V220" stroke="rgb(204,204,204)"/></g><g><path d="M45,260H30V220" stroke="rgb(204,204,204)"/></g><g><path d="M30,270H15V10" stroke="rgb(204,204,204)"/></g><g><path d="M45,280H30V270" stroke="rgb(204,204,204)"/></g><g><path d="M45,290H30V270" stroke="rgb(204,204,204)"/></g><g><path d="M45,300H30V270" stroke="rgb(204,204,204)"/></g><g><path d="M45,310H30V270" stroke="rgb(204,204,204)"/></g></g><g><text pointer-events="none" x="7" dy="0.35em" transform="translate(15, 10)" fill="rgb(0,0,0)">test</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(30, 20)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 30)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 40)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 50)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 60)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(30, 70)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 80)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 90)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 100)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 110)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(30, 120)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 130)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 140)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 150)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 160)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(30, 170)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 180)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 190)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 200)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 210)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(30, 220)" fill="rgb(0,0,0)">e</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 230)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 240)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 250)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 260)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(30, 270)" fill="rgb(0,0,0)">f</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 280)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 290)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 300)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(45, 310)" fill="rgb(0,0,0)">d</text></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="750" height="750"><g transform="translate(50, 50)"><g><rect shape-rendering="crispEdges" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(156,158,222)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" y="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(156,158,222)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="116.66666666666667" y="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="233.33333333333334" y="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(85,85,85)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="350" y="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="466.6666666666667" y="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="583.3333333333334" y="116.66666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" y="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="116.66666666666667" y="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(85,85,85)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="233.33333333333334" y="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="350" y="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(156,158,222)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="466.6666666666667" y="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="583.3333333333334" y="233.33333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" y="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="116.66666666666667" y="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="233.33333333333334" y="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(156,158,222)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="350" y="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="466.6666666666667" y="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(85,85,85)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="583.3333333333334" y="350" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" y="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="116.66666666666667" y="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="233.33333333333334" y="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="350" y="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(85,85,85)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="466.6666666666667" y="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="583.3333333333334" y="466.6666666666667" width="116.66666666666667" height="116.66666666666667" fill="rgb(156,158,222)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" y="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="116.66666666666667" y="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="233.33333333333334" y="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="350" y="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="466.6666666666667" y="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(156,158,222)" stroke="rgb(255,255,255)" stroke-width="1"/><rect shape-rendering="crispEdges" x="583.3333333333334" y="583.3333333333334" width="116.66666666666667" height="116.66666666666667" fill="rgb(238,238,238)" stroke="rgb(255,255,255)" stroke-width="1"/></g><g><text pointer-events="none" x="-4" dy="0.35em" transform="translate(0, 58.3333)" fill="rgb(156,158,222)" text-anchor="end">A</text><text pointer-events="none" x="4" dy="0.35em" transform="translate(58.3333) rotate(-90)" fill="rgb(156,158,222)">A</text><text pointer-events="none" x="-4" dy="0.35em" transform="translate(0, 175)" fill="rgb(156,158,222)" text-anchor="end">B</text><text pointer-events="none" x="4" dy="0.35em" transform="translate(175) rotate(-90)" fill="rgb(156,158,222)">B</text><text pointer-events="none" x="-4" dy="0.35em" transform="translate(0, 291.667)" fill="rgb(156,158,222)" text-anchor="end">C</text><text pointer-events="none" x="4" dy="0.35em" transform="translate(291.667) rotate(-90)" fill="rgb(156,158,222)">C</text><text pointer-events="none" x="-4" dy="0.35em" transform="translate(0, 408.333)" fill="rgb(156,158,222)" text-anchor="end">D</text><text pointer-events="none" x="4" dy="0.35em" transform="translate(408.333) rotate(-90)" fill="rgb(156,158,222)">D</text><text pointer-events="none" x="-4" dy="0.35em" transform="translate(0, 525)" fill="rgb(156,158,222)" text-anchor="end">E</text><text pointer-events="none" x="4" dy="0.35em" transform="translate(525) rotate(-90)" fill="rgb(156,158,222)">E</text><text pointer-events="none" x="-4" dy="0.35em" transform="translate(0, 641.667)" fill="rgb(156,158,222)" text-anchor="end">F</text><text pointer-events="none" x="4" dy="0.35em" transform="translate(641.667) rotate(-90)" fill="rgb(156,158,222)">F</text></g></g></svg>
@@ -0,0 +1,38 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Layout Indent</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Layout Indent</h1>
8
+ <script type="text/javascript">
9
+ color=pv.Colors.category19()
10
+ w=200
11
+ h=200
12
+
13
+ subtree={a:1,b:2,c:3,d:4}
14
+
15
+ hier_nodes=pv.dom({a:subtree,b:subtree, c:subtree, d:subtree,e:subtree,f:subtree}).root("test").nodes()
16
+
17
+
18
+ vis = new pv.Panel()
19
+ .width(w)
20
+ .height(h)
21
+ .top(20)
22
+ .bottom(10)
23
+ .left(10)
24
+
25
+ indent = vis.add(pv.Layout.Pack).
26
+ nodes(hier_nodes)
27
+
28
+ indent.node.add(pv.Dot).
29
+ fillStyle(function(d) {return color(d.nodeValue);}).
30
+ strokeStyle("black").
31
+ lineWidth(1).
32
+ antialias(false)
33
+ indent.label.add(pv.Label).
34
+ text(function(d) {return d.nodeName})
35
+ vis.render()
36
+ </script>
37
+ </body>
38
+ </html>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="210" height="230"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="100" r="100"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="100" r="30.6002309434949"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="95.90034641524234" cy="107.10080830223214" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="112.29896075427297" cy="107.10080830223214" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="104.09965358475766" cy="92.89919169776786" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="87.70103924572703" cy="92.89919169776786" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="161.20046188698979" cy="100" r="30.6002309434949"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="157.10080830223214" cy="107.10080830223214" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="173.49942264126275" cy="107.10080830223214" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="165.30011547174746" cy="92.89919169776786" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="148.90150113271682" cy="92.89919169776786" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="130.6002309434949" cy="46.99884528252551" r="30.6002309434949"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="126.50057735873725" cy="54.099653584757654" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="142.89919169776786" cy="54.099653584757654" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="134.69988452825254" cy="39.89803698029338" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="118.30127018922194" cy="39.89803698029338" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="69.39976905650511" cy="46.99884528252551" r="30.6002309434949"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="65.30011547174745" cy="54.099653584757654" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="81.69872981077806" cy="54.099653584757654" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="73.49942264126275" cy="39.89803698029338" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="57.10080830223214" cy="39.89803698029338" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="38.79953811301021" cy="100" r="30.6002309434949"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="34.699884528252554" cy="107.10080830223214" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="51.098498867283176" cy="107.10080830223214" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="42.89919169776786" cy="92.89919169776786" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="26.500577358737246" cy="92.89919169776786" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="69.39976905650511" cy="153.0011547174745" r="30.6002309434949"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="65.30011547174745" cy="160.10196301970663" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="81.69872981077806" cy="160.10196301970663" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="73.49942264126275" cy="145.90034641524235" r="8.19930716951531"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="57.10080830223214" cy="145.90034641524235" r="8.19930716951531"/></g><g><text pointer-events="none" dy="0.35em" transform="translate(100, 100)" fill="rgb(0,0,0)" text-anchor="middle">test</text><text pointer-events="none" dy="0.35em" transform="translate(100, 100)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(95.9003, 107.101)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(112.299, 107.101)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(104.1, 92.8992)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(87.701, 92.8992)" fill="rgb(0,0,0)" text-anchor="middle">d</text><text pointer-events="none" dy="0.35em" transform="translate(161.2, 100)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(157.101, 107.101)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(173.499, 107.101)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(165.3, 92.8992)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(148.902, 92.8992)" fill="rgb(0,0,0)" text-anchor="middle">d</text><text pointer-events="none" dy="0.35em" transform="translate(130.6, 46.9988)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(126.501, 54.0997)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(142.899, 54.0997)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(134.7, 39.898)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(118.301, 39.898)" fill="rgb(0,0,0)" text-anchor="middle">d</text><text pointer-events="none" dy="0.35em" transform="translate(69.3998, 46.9988)" fill="rgb(0,0,0)" text-anchor="middle">d</text><text pointer-events="none" dy="0.35em" transform="translate(65.3001, 54.0997)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(81.6987, 54.0997)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(73.4994, 39.898)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(57.1008, 39.898)" fill="rgb(0,0,0)" text-anchor="middle">d</text><text pointer-events="none" dy="0.35em" transform="translate(38.7995, 100)" fill="rgb(0,0,0)" text-anchor="middle">e</text><text pointer-events="none" dy="0.35em" transform="translate(34.6999, 107.101)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(51.0985, 107.101)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(42.8992, 92.8992)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(26.5006, 92.8992)" fill="rgb(0,0,0)" text-anchor="middle">d</text><text pointer-events="none" dy="0.35em" transform="translate(69.3998, 153.001)" fill="rgb(0,0,0)" text-anchor="middle">f</text><text pointer-events="none" dy="0.35em" transform="translate(65.3001, 160.102)" fill="rgb(0,0,0)" text-anchor="middle">a</text><text pointer-events="none" dy="0.35em" transform="translate(81.6987, 160.102)" fill="rgb(0,0,0)" text-anchor="middle">b</text><text pointer-events="none" dy="0.35em" transform="translate(73.4994, 145.9)" fill="rgb(0,0,0)" text-anchor="middle">c</text><text pointer-events="none" dy="0.35em" transform="translate(57.1008, 145.9)" fill="rgb(0,0,0)" text-anchor="middle">d</text></g></g></svg>
@@ -0,0 +1,40 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Layout Partition</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Layout Partition</h1>
8
+ <script type="text/javascript">
9
+ color=pv.Colors.category19()
10
+ w=400
11
+ h=400
12
+
13
+ subtree={a:1,b:2,c:3,d:4}
14
+
15
+ hier_nodes=pv.dom({a:subtree,b:subtree, c:subtree, d:subtree,e:subtree,f:subtree}).root("test").nodes()
16
+
17
+
18
+ vis = new pv.Panel()
19
+ .width(w)
20
+ .height(h)
21
+ .top(20)
22
+ .bottom(10)
23
+ .left(10)
24
+
25
+ partition= vis.add(pv.Layout.Partition.Fill).
26
+ nodes(hier_nodes).orient("left").
27
+ size(function(d) {return d.nodeValue})
28
+
29
+ partition.node.add(pv.Bar).
30
+ fillStyle(function(d) {return color(d.nodeValue);}).
31
+ strokeStyle("black").
32
+ lineWidth(1).
33
+ antialias(false)
34
+
35
+ partition.label.add(pv.Label).
36
+ text(function(d) {return d.nodeName})
37
+ vis.render()
38
+ </script>
39
+ </body>
40
+ </html>
@@ -0,0 +1,32 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="410" height="430"><g transform="translate(10, 20)"><g><rect shape-rendering="crispEdges" width="133.33333333333331" height="400" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="133.33333333333331" width="133.33333333333331" height="66.66666666666666" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" width="133.33333333333331" height="6.666666666666667" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="6.666666666666667" width="133.33333333333331" height="13.333333333333336" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="20" width="133.33333333333331" height="20" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="40" width="133.33333333333331" height="26.66666666666667" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="133.33333333333331" y="66.66666666666666" width="133.33333333333331" height="66.66666666666666" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="66.66666666666666" width="133.33333333333331" height="6.666666666666665" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="73.33333333333333" width="133.33333333333331" height="13.33333333333333" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="86.66666666666666" width="133.33333333333331" height="20.000000000000007" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="106.66666666666667" width="133.33333333333331" height="26.66666666666666" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="133.33333333333331" y="133.33333333333331" width="133.33333333333331" height="66.66666666666667" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="133.33333333333331" width="133.33333333333331" height="6.666666666666665" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="140" width="133.33333333333331" height="13.33333333333333" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="153.33333333333331" width="133.33333333333331" height="19.999999999999996" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="173.33333333333331" width="133.33333333333331" height="26.666666666666682" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="133.33333333333331" y="200" width="133.33333333333331" height="66.66666666666666" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="200" width="133.33333333333331" height="6.666666666666643" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="206.66666666666663" width="133.33333333333331" height="13.33333333333333" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="219.99999999999997" width="133.33333333333331" height="19.99999999999997" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="239.99999999999994" width="133.33333333333331" height="26.66666666666666" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="133.33333333333331" y="266.66666666666663" width="133.33333333333331" height="66.66666666666666" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="266.66666666666663" width="133.33333333333331" height="6.666666666666687" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="273.3333333333333" width="133.33333333333331" height="13.33333333333333" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="286.6666666666667" width="133.33333333333331" height="19.99999999999997" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="306.66666666666663" width="133.33333333333331" height="26.66666666666666" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="133.33333333333331" y="333.3333333333333" width="133.33333333333331" height="66.66666666666666" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="333.3333333333333" width="133.33333333333331" height="6.666666666666643" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="339.99999999999994" width="133.33333333333331" height="13.33333333333333" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="353.33333333333326" width="133.33333333333331" height="19.99999999999997" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="266.66666666666663" y="373.33333333333326" width="133.33333333333331" height="26.66666666666666" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1"/></g><g>
2
+ <text pointer-events="none" dy="0.35em" transform="translate(66.6667, 200)" fill="rgb(0,0,0)" text-anchor="middle">test</text>
3
+ <text pointer-events="none" dy="0.35em" transform="translate(200, 33.3333)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
4
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 3.33333)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
5
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 13.3333)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
6
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 30)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
7
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 53.3333)" fill="rgb(0,0,0)" text-anchor="middle">d</text>
8
+ <text pointer-events="none" dy="0.35em" transform="translate(200, 100)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
9
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 70)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
10
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 80)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
11
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 96.6667)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
12
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 120)" fill="rgb(0,0,0)" text-anchor="middle">d</text>
13
+ <text pointer-events="none" dy="0.35em" transform="translate(200, 166.667)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
14
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 136.667)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
15
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 146.667)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
16
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 163.333)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
17
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 186.667)" fill="rgb(0,0,0)" text-anchor="middle">d</text>
18
+ <text pointer-events="none" dy="0.35em" transform="translate(200, 233.333)" fill="rgb(0,0,0)" text-anchor="middle">d</text>
19
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 203.333)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
20
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 213.333)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
21
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 230)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
22
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 253.333)" fill="rgb(0,0,0)" text-anchor="middle">d</text>
23
+ <text pointer-events="none" dy="0.35em" transform="translate(200, 300)" fill="rgb(0,0,0)" text-anchor="middle">e</text>
24
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 270)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
25
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 280)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
26
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 296.667)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
27
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 320)" fill="rgb(0,0,0)" text-anchor="middle">d</text>
28
+ <text pointer-events="none" dy="0.35em" transform="translate(200, 366.667)" fill="rgb(0,0,0)" text-anchor="middle">f</text>
29
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 336.667)" fill="rgb(0,0,0)" text-anchor="middle">a</text>
30
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 346.667)" fill="rgb(0,0,0)" text-anchor="middle">b</text>
31
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 363.333)" fill="rgb(0,0,0)" text-anchor="middle">c</text>
32
+ <text pointer-events="none" dy="0.35em" transform="translate(333.333, 386.667)" fill="rgb(0,0,0)" text-anchor="middle">d</text></g></g></svg>
@@ -0,0 +1,36 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Layout tree, orient left</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Layout tree, orient left</h1>
8
+ <script type="text/javascript">
9
+ color=pv.Colors.category19()
10
+ w=200
11
+ h=200
12
+ hier_nodes=pv.dom({a:1,b:{ba:2,bb:{bba:3}, bc:4}, c:5}).root("test").nodes()
13
+
14
+
15
+ vis = new pv.Panel()
16
+ .width(w)
17
+ .height(h)
18
+ .top(20)
19
+ .bottom(10)
20
+ .left(10)
21
+
22
+ treemap = vis.add(pv.Layout.Tree).
23
+ nodes(hier_nodes) .breadth(40).orient("left")
24
+
25
+ treemap.node.add(pv.Dot).
26
+ fillStyle(function(d) {return color(d.nodeValue);}).
27
+ strokeStyle("black").
28
+ lineWidth(1).
29
+ antialias(false)
30
+ treemap.link.add(pv.Line)
31
+ treemap.label.add(pv.Label).
32
+ text(function(d) {return d.nodeName})
33
+ vis.render()
34
+ </script>
35
+ </body>
36
+ </html>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="210" height="230"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="0" cy="100" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="60" cy="60" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="60" cy="100" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="120" cy="60" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="120" cy="100" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="180" cy="100" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="120" cy="140" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(140,162,82)" stroke="rgb(0,0,0)" stroke-width="1" cx="60" cy="140" r="4.5"/></g><g><g><path d="M60,60L0,100" stroke="rgb(204,204,204)"/></g><g><path d="M60,100L0,100" stroke="rgb(204,204,204)"/></g><g><path d="M120,60L60,100" stroke="rgb(204,204,204)"/></g><g><path d="M120,100L60,100" stroke="rgb(204,204,204)"/></g><g><path d="M180,100L120,100" stroke="rgb(204,204,204)"/></g><g><path d="M120,140L60,100" stroke="rgb(204,204,204)"/></g><g><path d="M60,140L0,100" stroke="rgb(204,204,204)"/></g></g><g><text pointer-events="none" x="-7" dy="0.35em" transform="translate(0, 100) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">test</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(60, 60)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(60, 100) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(120, 60)" fill="rgb(0,0,0)">ba</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(120, 100) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">bb</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(180, 100)" fill="rgb(0,0,0)">bba</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(120, 140)" fill="rgb(0,0,0)">bc</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(60, 140)" fill="rgb(0,0,0)">c</text></g></g></svg>
@@ -0,0 +1,39 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Layout tree, orient radial</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Layout tree, orient radial</h1>
8
+ <script type="text/javascript">
9
+ color=pv.Colors.category19()
10
+ w=200
11
+ h=200
12
+
13
+ subtree={a:1,b:2,c:3,d:4}
14
+
15
+ hier_nodes=pv.dom({a:subtree,b:subtree, c:subtree, d:subtree,e:subtree,f:subtree}).root("test").nodes()
16
+
17
+
18
+ vis = new pv.Panel()
19
+ .width(w)
20
+ .height(h)
21
+ .top(20)
22
+ .bottom(10)
23
+ .left(10)
24
+
25
+ treemap = vis.add(pv.Layout.Tree).
26
+ nodes(hier_nodes) .breadth(20).orient("radial")
27
+
28
+ treemap.node.add(pv.Dot).
29
+ fillStyle(function(d) {return color(d.nodeValue);}).
30
+ strokeStyle("black").
31
+ lineWidth(1).
32
+ antialias(false)
33
+ treemap.link.add(pv.Line)
34
+ treemap.label.add(pv.Label).
35
+ text(function(d) {return d.nodeName})
36
+ vis.render()
37
+ </script>
38
+ </body>
39
+ </html>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="210" height="230"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="100" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="70.57661008130299" cy="47.709808513524074" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="17.109023230014827" cy="13.229694191401052" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="32.65248246691104" cy="0.6807577448847297" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="50.06237961434291" cy="-9.11569121908181" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="68.85622484574002" cy="-15.88815845089998" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="118.91934174371612" cy="43.06092283866483" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="108.48846420012435" cy="-19.69939839248653" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="128.22850879635874" cy="-16.63254816359752" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="147.18624157316293" cy="-10.33339751045061" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="164.83627670417678" cy="-0.9765181769475788" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="154.8665839956298" cy="75.71712618633252" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="194.30647129323376" cy="25.795623631631557" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="205.30990742684475" cy="42.46893536749564" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="213.39483355776852" cy="60.73663638446173" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="218.337187787551" cy="80.0924640767902" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="154.8665839956298" cy="124.28287381366748" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="218.337187787551" cy="119.9075359232098" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="213.39483355776852" cy="139.26336361553825" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="205.30990742684475" cy="157.53106463250435" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="194.30647129323376" cy="174.20437636836846" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="118.91934174371612" cy="156.93907716133518" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="164.83627670417678" cy="200.9765181769476" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="147.18624157316293" cy="210.3333975104506" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="128.22850879635874" cy="216.6325481635975" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="108.48846420012435" cy="219.69939839248653" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="70.57661008130299" cy="152.29019148647592" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="68.85622484574002" cy="215.8881584509" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="50.06237961434291" cy="209.1156912190818" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="32.65248246691104" cy="199.31924225511528" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="17.109023230014827" cy="186.77030580859895" r="4.5"/></g><g><g><path d="M70.57661008130299,47.709808513524074L100,100" stroke="rgb(204,204,204)"/></g><g><path d="M17.109023230014827,13.229694191401052L70.57661008130299,47.709808513524074" stroke="rgb(204,204,204)"/></g><g><path d="M32.65248246691104,0.6807577448847297L70.57661008130299,47.709808513524074" stroke="rgb(204,204,204)"/></g><g><path d="M50.06237961434291,-9.11569121908181L70.57661008130299,47.709808513524074" stroke="rgb(204,204,204)"/></g><g><path d="M68.85622484574002,-15.88815845089998L70.57661008130299,47.709808513524074" stroke="rgb(204,204,204)"/></g><g><path d="M118.91934174371612,43.06092283866483L100,100" stroke="rgb(204,204,204)"/></g><g><path d="M108.48846420012435,-19.69939839248653L118.91934174371612,43.06092283866483" stroke="rgb(204,204,204)"/></g><g><path d="M128.22850879635874,-16.63254816359752L118.91934174371612,43.06092283866483" stroke="rgb(204,204,204)"/></g><g><path d="M147.18624157316293,-10.33339751045061L118.91934174371612,43.06092283866483" stroke="rgb(204,204,204)"/></g><g><path d="M164.83627670417678,-0.9765181769475788L118.91934174371612,43.06092283866483" stroke="rgb(204,204,204)"/></g><g><path d="M154.8665839956298,75.71712618633252L100,100" stroke="rgb(204,204,204)"/></g><g><path d="M194.30647129323376,25.795623631631557L154.8665839956298,75.71712618633252" stroke="rgb(204,204,204)"/></g><g><path d="M205.30990742684475,42.46893536749564L154.8665839956298,75.71712618633252" stroke="rgb(204,204,204)"/></g><g><path d="M213.39483355776852,60.73663638446173L154.8665839956298,75.71712618633252" stroke="rgb(204,204,204)"/></g><g><path d="M218.337187787551,80.0924640767902L154.8665839956298,75.71712618633252" stroke="rgb(204,204,204)"/></g><g><path d="M154.8665839956298,124.28287381366748L100,100" stroke="rgb(204,204,204)"/></g><g><path d="M218.337187787551,119.9075359232098L154.8665839956298,124.28287381366748" stroke="rgb(204,204,204)"/></g><g><path d="M213.39483355776852,139.26336361553825L154.8665839956298,124.28287381366748" stroke="rgb(204,204,204)"/></g><g><path d="M205.30990742684475,157.53106463250435L154.8665839956298,124.28287381366748" stroke="rgb(204,204,204)"/></g><g><path d="M194.30647129323376,174.20437636836846L154.8665839956298,124.28287381366748" stroke="rgb(204,204,204)"/></g><g><path d="M118.91934174371612,156.93907716133518L100,100" stroke="rgb(204,204,204)"/></g><g><path d="M164.83627670417678,200.9765181769476L118.91934174371612,156.93907716133518" stroke="rgb(204,204,204)"/></g><g><path d="M147.18624157316293,210.3333975104506L118.91934174371612,156.93907716133518" stroke="rgb(204,204,204)"/></g><g><path d="M128.22850879635874,216.6325481635975L118.91934174371612,156.93907716133518" stroke="rgb(204,204,204)"/></g><g><path d="M108.48846420012435,219.69939839248653L118.91934174371612,156.93907716133518" stroke="rgb(204,204,204)"/></g><g><path d="M70.57661008130299,152.29019148647592L100,100" stroke="rgb(204,204,204)"/></g><g><path d="M68.85622484574002,215.8881584509L70.57661008130299,152.29019148647592" stroke="rgb(204,204,204)"/></g><g><path d="M50.06237961434291,209.1156912190818L70.57661008130299,152.29019148647592" stroke="rgb(204,204,204)"/></g><g><path d="M32.65248246691104,199.31924225511528L70.57661008130299,152.29019148647592" stroke="rgb(204,204,204)"/></g><g><path d="M17.109023230014827,186.77030580859895L70.57661008130299,152.29019148647592" stroke="rgb(204,204,204)"/></g></g><g><text pointer-events="none" x="-7" dy="0.35em" transform="translate(100, 100) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">test</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(70.5766, 47.7098) rotate(60.6338)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(17.109, 13.2297) rotate(46.3098)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(32.6525, 0.680758) rotate(55.8591)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(50.0624, -9.11569) rotate(65.4084)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(68.8562, -15.8882) rotate(74.9577)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(118.919, 43.0609) rotate(288.38)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(108.488, -19.6994) rotate(-85.9437)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(128.229, -16.6325) rotate(-76.3944)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(147.186, -10.3334) rotate(-66.8451)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(164.836, -0.976518) rotate(-57.2958)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(154.867, 75.7171) rotate(336.127)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(194.306, 25.7956) rotate(-38.1972)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(205.31, 42.4689) rotate(-28.6479)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(213.395, 60.7366) rotate(-19.0986)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(218.337, 80.0925) rotate(-9.5493)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(154.867, 124.283) rotate(383.873)" fill="rgb(0,0,0)" text-anchor="end">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(218.337, 119.908) rotate(9.5493)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(213.395, 139.263) rotate(19.0986)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(205.31, 157.531) rotate(28.6479)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(194.306, 174.204) rotate(38.1972)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(118.919, 156.939) rotate(431.62)" fill="rgb(0,0,0)" text-anchor="end">e</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(164.836, 200.977) rotate(57.2958)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(147.186, 210.333) rotate(66.8451)" fill="rgb(0,0,0)">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(128.229, 216.633) rotate(76.3944)" fill="rgb(0,0,0)">c</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(108.488, 219.699) rotate(85.9437)" fill="rgb(0,0,0)">d</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(70.5766, 152.29) rotate(299.366)" fill="rgb(0,0,0)">f</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(68.8562, 215.888) rotate(285.042)" fill="rgb(0,0,0)" text-anchor="end">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(50.0624, 209.116) rotate(294.592)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(32.6525, 199.319) rotate(304.141)" fill="rgb(0,0,0)" text-anchor="end">c</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(17.109, 186.77) rotate(313.69)" fill="rgb(0,0,0)" text-anchor="end">d</text></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="210" height="230"><g transform="translate(10, 20)"><g><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="0" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(115,117,181)" stroke="rgb(0,0,0)" stroke-width="1" cx="60" cy="60" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="60" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(74,85,132)" stroke="rgb(0,0,0)" stroke-width="1" cx="60" cy="120" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(156,158,222)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="120" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(206,219,156)" stroke="rgb(0,0,0)" stroke-width="1" cx="100" cy="180" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(181,207,107)" stroke="rgb(0,0,0)" stroke-width="1" cx="140" cy="120" r="4.5"/><circle shape-rendering="crispEdges" fill="rgb(140,162,82)" stroke="rgb(0,0,0)" stroke-width="1" cx="140" cy="60" r="4.5"/></g><g><g><path d="M60,60L100,0" stroke="rgb(204,204,204)"/></g><g><path d="M100,60L100,0" stroke="rgb(204,204,204)"/></g><g><path d="M60,120L100,60" stroke="rgb(204,204,204)"/></g><g><path d="M100,120L100,60" stroke="rgb(204,204,204)"/></g><g><path d="M100,180L100,120" stroke="rgb(204,204,204)"/></g><g><path d="M140,120L100,60" stroke="rgb(204,204,204)"/></g><g><path d="M140,60L100,0" stroke="rgb(204,204,204)"/></g></g><g><text pointer-events="none" x="-7" dy="0.35em" transform="translate(100) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">test</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(60, 60)" fill="rgb(0,0,0)">a</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(100, 60) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">b</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(60, 120)" fill="rgb(0,0,0)">ba</text><text pointer-events="none" x="-7" dy="0.35em" transform="translate(100, 120) rotate(360)" fill="rgb(0,0,0)" text-anchor="end">bb</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(100, 180)" fill="rgb(0,0,0)">bba</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(140, 120)" fill="rgb(0,0,0)">bc</text><text pointer-events="none" x="7" dy="0.35em" transform="translate(140, 60)" fill="rgb(0,0,0)">c</text></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="200" height="200"><g><g><rect shape-rendering="crispEdges" x="166.66666666666666" y="120" width="33.33333333333334" height="80" fill="rgb(156,158,222)"/><rect shape-rendering="crispEdges" x="166.66666666666666" y="120" width="33.33333333333334" height="80" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="88.88888888888889" y="72" width="111.11111111111111" height="48" fill="rgb(115,117,181)"/><rect shape-rendering="crispEdges" x="88.88888888888889" y="72" width="111.11111111111111" height="48" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" x="88.88888888888889" width="111.11111111111111" height="72" fill="rgb(74,85,132)"/><rect shape-rendering="crispEdges" x="88.88888888888889" width="111.11111111111111" height="72" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" width="88.88888888888889" height="120" fill="rgb(206,219,156)"/><rect shape-rendering="crispEdges" width="88.88888888888889" height="120" stroke="rgb(0,0,0)" stroke-width="1"/><rect shape-rendering="crispEdges" y="120" width="166.66666666666666" height="80" fill="rgb(181,207,107)"/><rect shape-rendering="crispEdges" y="120" width="166.66666666666666" height="80" stroke="rgb(0,0,0)" stroke-width="1"/></g><g><text pointer-events="none" dy="0.35em" transform="translate(183.333, 160) rotate(-90)" fill="rgb(0,0,0)" text-anchor="middle">1</text><text pointer-events="none" dy="0.35em" transform="translate(144.444, 96)" fill="rgb(0,0,0)" text-anchor="middle">2</text><text pointer-events="none" dy="0.35em" transform="translate(144.444, 36)" fill="rgb(0,0,0)" text-anchor="middle">3</text><text pointer-events="none" dy="0.35em" transform="translate(44.4444, 60) rotate(-90)" fill="rgb(0,0,0)" text-anchor="middle">4</text><text pointer-events="none" dy="0.35em" transform="translate(83.3333, 160)" fill="rgb(0,0,0)" text-anchor="middle">5</text></g></g></svg>
@@ -0,0 +1,63 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Line interpolation</title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Line interpolation</h1>
8
+ <script type="text/javascript">
9
+
10
+ data = pv.range(0, 10, 0.2).map(function(x) {
11
+ return {x:x, y:Math.sin(x) + 2};
12
+ });
13
+
14
+
15
+ p_w=200
16
+ p_h=150
17
+ w = 20+p_w*2
18
+ h = 20+p_h*4
19
+
20
+ x = pv.Scale.linear(data, function(d) {return d.x;}).range(0, p_w-30)
21
+
22
+
23
+ y = pv.Scale.linear(data, function(d) {return d.y;}).range(0, p_h-20);
24
+
25
+ interpolations=["linear","step-before","step-after","polar","polar-reverse", "basis", "cardinal"]
26
+
27
+ vis = new pv.Panel()
28
+ .width(w)
29
+ .height(h)
30
+ .bottom(20)
31
+ .left(20)
32
+ .right(10)
33
+ .top(5)
34
+
35
+ for(var i=0; i<interpolations.length;i++) {
36
+ var inter=interpolations[i];
37
+ n=i%2
38
+ m=Math.floor(i/2)
39
+ panel=vis.add(pv.Panel).
40
+ left(n*(p_w+10)).
41
+ top(m*(p_h+10)).
42
+ width(p_w).
43
+ height(p_h)
44
+
45
+ panel.anchor('top').add(pv.Label).text(inter)
46
+
47
+ panel.add(pv.Line).data(data).
48
+ lineWidth(2).
49
+ left(function(d){return x(d.x)}).
50
+ bottom(function(d){ return y(d.y)}).
51
+ interpolate(inter);
52
+ }
53
+
54
+
55
+
56
+
57
+ vis.render()
58
+
59
+
60
+
61
+ </script>
62
+ </body>
63
+ </html>
@@ -0,0 +1 @@
1
+ <svg font-size="10px" font-family="sans-serif" fill="none" stroke="none" stroke-width="1.5" width="450" height="645"><g transform="translate(20, 5)"><g><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">linear</text></g><g><path d="M0,85.1110289025131L3.4693877551020407,72.16994632482216L6.938775510204081,59.74478387155618L10.408163265306124,48.330893559859334L13.877551020408163,38.38331117784524L17.346938775510203,30.298615443673356L20.816326530612248,24.399117663532422L24.285714285714285,20.920012196974767L27.755102040816325,20L31.224489795918366,21.675759055635012L34.69387755102041,25.880482138495154L38.16326530612245,32.446540208037845L41.632653061224495,41.11216524942479L45.102040816326536,51.53188613821702L48.57142857142857,63.29030148390915L52.0408163265306,75.91864037249368L55.51020408163265,88.91345078351068L58.97959183673469,101.7566706333684L62.44897959183673,113.93628127577693L65.91836734693878,124.96672006940747L69.38775510204081,134.40823822812035L72.85714285714285,141.88443221736128L76.3265306122449,147.09724977527353L79.79591836734694,149.83887231582023L83.26530612244899,150L86.73469387755102,147.57420917551244L90.20408163265307,142.6582084675042L93.67346938775509,135.4479833108663L97.14285714285714,126.23098262941264L100.61224489795919,115.37465915438517L104.0816326530612,103.31182024362349L107.55102040816325,90.52337321801011L111.0204081632653,77.51915310417802L114.48979591836734,64.81759712087606L117.95918367346938,52.925076223080765L121.42857142857142,42.31570768996741L124.89795918367346,33.412453565152674L128.3673469387755,26.570258494749908L131.83673469387756,22.06189920442094L135.30612244897958,20.067109752120757L138.77551020408163,20.66541609839038L142.24489795918367,23.832965657268943L145.7142857142857,29.443478223624595L149.18367346938774,37.27328036643294L152.6530612244898,47.010222582629765L156.1224489795918,58.26612371275317L159.59183673469389,70.5922464987953L163.0612244897959,83.49718732260628L166.53061224489798,96.46646691743665L170,108.98304103276872" stroke="rgb(31,119,180)" stroke-width="2"/></g></g><g transform="translate(20, 5)"><g transform="translate(210)"><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">step-before</text></g><g transform="translate(210)"><path d="M0,85.1110289025131V72.16994632482216H3.4693877551020407V59.74478387155618H6.938775510204081V48.330893559859334H10.408163265306124V38.38331117784524H13.877551020408163V30.298615443673356H17.346938775510203V24.399117663532422H20.816326530612248V20.920012196974767H24.285714285714285V20H27.755102040816325V21.675759055635012H31.224489795918366V25.880482138495154H34.69387755102041V32.446540208037845H38.16326530612245V41.11216524942479H41.632653061224495V51.53188613821702H45.102040816326536V63.29030148390915H48.57142857142857V75.91864037249368H52.0408163265306V88.91345078351068H55.51020408163265V101.7566706333684H58.97959183673469V113.93628127577693H62.44897959183673V124.96672006940747H65.91836734693878V134.40823822812035H69.38775510204081V141.88443221736128H72.85714285714285V147.09724977527353H76.3265306122449V149.83887231582023H79.79591836734694V150H83.26530612244899V147.57420917551244H86.73469387755102V142.6582084675042H90.20408163265307V135.4479833108663H93.67346938775509V126.23098262941264H97.14285714285714V115.37465915438517H100.61224489795919V103.31182024362349H104.0816326530612V90.52337321801011H107.55102040816325V77.51915310417802H111.0204081632653V64.81759712087606H114.48979591836734V52.925076223080765H117.95918367346938V42.31570768996741H121.42857142857142V33.412453565152674H124.89795918367346V26.570258494749908H128.3673469387755V22.06189920442094H131.83673469387756V20.067109752120757H135.30612244897958V20.66541609839038H138.77551020408163V23.832965657268943H142.24489795918367V29.443478223624595H145.7142857142857V37.27328036643294H149.18367346938774V47.010222582629765H152.6530612244898V58.26612371275317H156.1224489795918V70.5922464987953H159.59183673469389V83.49718732260628H163.0612244897959V96.46646691743665H166.53061224489798V108.98304103276872H170" stroke="rgb(31,119,180)" stroke-width="2"/></g></g><g transform="translate(20, 5)"><g transform="translate(0, 160)"><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">step-after</text></g><g transform="translate(0, 160)"><path d="M0,85.1110289025131H3.4693877551020407V72.16994632482216H6.938775510204081V59.74478387155618H10.408163265306124V48.330893559859334H13.877551020408163V38.38331117784524H17.346938775510203V30.298615443673356H20.816326530612248V24.399117663532422H24.285714285714285V20.920012196974767H27.755102040816325V20H31.224489795918366V21.675759055635012H34.69387755102041V25.880482138495154H38.16326530612245V32.446540208037845H41.632653061224495V41.11216524942479H45.102040816326536V51.53188613821702H48.57142857142857V63.29030148390915H52.0408163265306V75.91864037249368H55.51020408163265V88.91345078351068H58.97959183673469V101.7566706333684H62.44897959183673V113.93628127577693H65.91836734693878V124.96672006940747H69.38775510204081V134.40823822812035H72.85714285714285V141.88443221736128H76.3265306122449V147.09724977527353H79.79591836734694V149.83887231582023H83.26530612244899V150H86.73469387755102V147.57420917551244H90.20408163265307V142.6582084675042H93.67346938775509V135.4479833108663H97.14285714285714V126.23098262941264H100.61224489795919V115.37465915438517H104.0816326530612V103.31182024362349H107.55102040816325V90.52337321801011H111.0204081632653V77.51915310417802H114.48979591836734V64.81759712087606H117.95918367346938V52.925076223080765H121.42857142857142V42.31570768996741H124.89795918367346V33.412453565152674H128.3673469387755V26.570258494749908H131.83673469387756V22.06189920442094H135.30612244897958V20.067109752120757H138.77551020408163V20.66541609839038H142.24489795918367V23.832965657268943H145.7142857142857V29.443478223624595H149.18367346938774V37.27328036643294H152.6530612244898V47.010222582629765H156.1224489795918V58.26612371275317H159.59183673469389V70.5922464987953H163.0612244897959V83.49718732260628H166.53061224489798V96.46646691743665H170V108.98304103276872" stroke="rgb(31,119,180)" stroke-width="2"/></g></g><g transform="translate(20, 5)"><g transform="translate(210, 160)"><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">polar</text></g><g transform="translate(210, 160)"><path d="M0,85.1110289025131A6.699034812528366,6.699034812528366 0 0,1 3.4693877551020407,72.16994632482216A6.450219247926824,6.450219247926824 0 0,1 6.938775510204081,59.74478387155618A5.964762012073472,5.964762012073472 0 0,1 10.408163265306124,48.330893559859334A5.2676144183636175,5.2676144183636175 0 0,1 13.877551020408163,38.38331117784524A4.398833837205865,4.398833837205865 0 0,1 17.346938775510203,30.298615443673356A3.4220142260494697,3.4220142260494697 0 0,1 20.816326530612248,24.399117663532422A2.456665740525322,2.456665740525322 0 0,1 24.285714285714285,20.920012196974767A1.7946499545757046,1.7946499545757046 0 0,1 27.755102040816325,20A1.926448792973403,1.926448792973403 0 0,1 31.224489795918366,21.675759055635012A2.725635136935466,2.725635136935466 0 0,1 34.69387755102041,25.880482138495154A3.713144555759265,3.713144555759265 0 0,1 38.16326530612245,32.446540208037845A4.667164791207949,4.667164791207949 0 0,1 41.632653061224495,41.11216524942479A5.4910662624754645,5.4910662624754645 0 0,1 45.102040816326536,51.53188613821702A6.129783496116729,6.129783496116729 0 0,1 48.57142857142857,63.29030148390915A6.548121762768857,6.548121762768857 0 0,1 52.0408163265306,75.91864037249368A6.724986041129153,6.724986041129153 0 0,1 55.51020408163265,88.91345078351068A6.651784488147359,6.651784488147359 0 0,1 58.97959183673469,101.7566706333684A6.332052723957752,6.332052723957752 0 0,1 62.44897959183673,113.93628127577693A5.78159215474599,5.78159215474599 0 0,1 65.91836734693878,124.96672006940747A5.029386556443962,5.029386556443962 0 0,1 69.38775510204081,134.40823822812035A4.120986773820503,4.120986773820503 0 0,1 72.85714285714285,141.88443221736128A3.1308991634724608,3.1308991634724608 0 0,1 76.3265306122449,147.09724977527353A2.210946943624257,2.210946943624257 0 0,1 79.79591836734694,149.83887231582023A1.7365636704322969,1.7365636704322969 0 0,1 83.26530612244899,150A2.1166667498345118,2.1166667498345118 0 0,1 86.73469387755102,147.57420917551244A3.0084761240696847,3.0084761240696847 0 0,1 90.20408163265307,142.6582084675042A4.000749873607006,4.000749873607006 0 0,1 93.67346938775509,135.4479833108663A4.924168786637229,4.924168786637229 0 0,1 97.14285714285714,126.23098262941264A5.69860532915038,5.69860532915038 0 0,1 100.61224489795919,115.37465915438517A6.275920928083742,6.275920928083742 0 0,1 104.0816326530612,103.31182024362349A6.625349589307943,6.625349589307943 0 0,1 107.55102040816325,90.52337321801011A6.729531784683224,6.729531784683224 0 0,1 111.0204081632653,77.51915310417802A6.583429497461898,6.583429497461898 0 0,1 114.48979591836734,64.81759712087606A6.194124326725889,6.194124326725889 0 0,1 117.95918367346938,52.925076223080765A5.581114406340989,5.581114406340989 0 0,1 121.42857142857142,42.31570768996741A4.777671645432601,4.777671645432601 0 0,1 124.89795918367346,33.412453565152674A3.8357621399369886,3.8357621399369886 0 0,1 128.3673469387755,26.570258494749908A2.84437844203033,2.84437844203033 0 0,1 131.83673469387756,22.06189920442094A2.000989527350149,2.000989527350149 0 0,1 135.30612244897958,20.067109752120757A1.7602998238395733,1.7602998238395733 0 0,1 138.77551020408163,20.66541609839038A2.3489370789361197,2.3489370789361197 0 0,1 142.24489795918367,23.832965657268943A3.298276165381187,3.298276165381187 0 0,1 145.7142857142857,29.443478223624595A4.282010421250111,4.282010421250111 0 0,1 149.18367346938774,37.27328036643294A5.168285380975202,5.168285380975202 0 0,1 152.6530612244898,47.010222582629765A5.889226639516542,5.889226639516542 0 0,1 156.1224489795918,58.26612371275317A6.402537667437797,6.402537667437797 0 0,1 159.59183673469389,70.5922464987953A6.6815819433221595,6.6815819433221595 0 0,1 163.0612244897959,83.49718732260628A6.712653435939762,6.712653435939762 0 0,1 166.53061224489798,96.46646691743665A6.494252824225678,6.494252824225678 0 0,1 170,108.98304103276872" stroke="rgb(31,119,180)" stroke-width="2"/></g></g><g transform="translate(20, 5)"><g transform="translate(0, 320)"><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">polar-reverse</text></g><g transform="translate(0, 320)"><path d="M0,85.1110289025131A6.699034812528366,6.699034812528366 0 0,0 3.4693877551020407,72.16994632482216A6.450219247926824,6.450219247926824 0 0,0 6.938775510204081,59.74478387155618A5.964762012073472,5.964762012073472 0 0,0 10.408163265306124,48.330893559859334A5.2676144183636175,5.2676144183636175 0 0,0 13.877551020408163,38.38331117784524A4.398833837205865,4.398833837205865 0 0,0 17.346938775510203,30.298615443673356A3.4220142260494697,3.4220142260494697 0 0,0 20.816326530612248,24.399117663532422A2.456665740525322,2.456665740525322 0 0,0 24.285714285714285,20.920012196974767A1.7946499545757046,1.7946499545757046 0 0,0 27.755102040816325,20A1.926448792973403,1.926448792973403 0 0,0 31.224489795918366,21.675759055635012A2.725635136935466,2.725635136935466 0 0,0 34.69387755102041,25.880482138495154A3.713144555759265,3.713144555759265 0 0,0 38.16326530612245,32.446540208037845A4.667164791207949,4.667164791207949 0 0,0 41.632653061224495,41.11216524942479A5.4910662624754645,5.4910662624754645 0 0,0 45.102040816326536,51.53188613821702A6.129783496116729,6.129783496116729 0 0,0 48.57142857142857,63.29030148390915A6.548121762768857,6.548121762768857 0 0,0 52.0408163265306,75.91864037249368A6.724986041129153,6.724986041129153 0 0,0 55.51020408163265,88.91345078351068A6.651784488147359,6.651784488147359 0 0,0 58.97959183673469,101.7566706333684A6.332052723957752,6.332052723957752 0 0,0 62.44897959183673,113.93628127577693A5.78159215474599,5.78159215474599 0 0,0 65.91836734693878,124.96672006940747A5.029386556443962,5.029386556443962 0 0,0 69.38775510204081,134.40823822812035A4.120986773820503,4.120986773820503 0 0,0 72.85714285714285,141.88443221736128A3.1308991634724608,3.1308991634724608 0 0,0 76.3265306122449,147.09724977527353A2.210946943624257,2.210946943624257 0 0,0 79.79591836734694,149.83887231582023A1.7365636704322969,1.7365636704322969 0 0,0 83.26530612244899,150A2.1166667498345118,2.1166667498345118 0 0,0 86.73469387755102,147.57420917551244A3.0084761240696847,3.0084761240696847 0 0,0 90.20408163265307,142.6582084675042A4.000749873607006,4.000749873607006 0 0,0 93.67346938775509,135.4479833108663A4.924168786637229,4.924168786637229 0 0,0 97.14285714285714,126.23098262941264A5.69860532915038,5.69860532915038 0 0,0 100.61224489795919,115.37465915438517A6.275920928083742,6.275920928083742 0 0,0 104.0816326530612,103.31182024362349A6.625349589307943,6.625349589307943 0 0,0 107.55102040816325,90.52337321801011A6.729531784683224,6.729531784683224 0 0,0 111.0204081632653,77.51915310417802A6.583429497461898,6.583429497461898 0 0,0 114.48979591836734,64.81759712087606A6.194124326725889,6.194124326725889 0 0,0 117.95918367346938,52.925076223080765A5.581114406340989,5.581114406340989 0 0,0 121.42857142857142,42.31570768996741A4.777671645432601,4.777671645432601 0 0,0 124.89795918367346,33.412453565152674A3.8357621399369886,3.8357621399369886 0 0,0 128.3673469387755,26.570258494749908A2.84437844203033,2.84437844203033 0 0,0 131.83673469387756,22.06189920442094A2.000989527350149,2.000989527350149 0 0,0 135.30612244897958,20.067109752120757A1.7602998238395733,1.7602998238395733 0 0,0 138.77551020408163,20.66541609839038A2.3489370789361197,2.3489370789361197 0 0,0 142.24489795918367,23.832965657268943A3.298276165381187,3.298276165381187 0 0,0 145.7142857142857,29.443478223624595A4.282010421250111,4.282010421250111 0 0,0 149.18367346938774,37.27328036643294A5.168285380975202,5.168285380975202 0 0,0 152.6530612244898,47.010222582629765A5.889226639516542,5.889226639516542 0 0,0 156.1224489795918,58.26612371275317A6.402537667437797,6.402537667437797 0 0,0 159.59183673469389,70.5922464987953A6.6815819433221595,6.6815819433221595 0 0,0 163.0612244897959,83.49718732260628A6.712653435939762,6.712653435939762 0 0,0 166.53061224489798,96.46646691743665A6.494252824225678,6.494252824225678 0 0,0 170,108.98304103276872" stroke="rgb(31,119,180)" stroke-width="2"/></g></g><g transform="translate(20, 5)"><g transform="translate(210, 320)"><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">basis</text></g><g transform="translate(210, 320)"><path d="M0,85.1110289025131C0,85.11102890251308,0,85.11102890251308,0.5782312925170068,82.95418180623128C1.1564625850340136,80.79733470994944,2.312925170068027,76.4836405173858,3.4693877551020407,72.25593301222632C4.625850340136054,68.02822550706682,5.782312925170068,63.8865046893115,6.938775510204081,59.913329228484365C8.095238095238095,55.94015376765722,9.251700680272108,52.13552366375828,10.408163265306122,48.57527821480645C11.564625850340136,45.015032765854635,12.72108843537415,41.699171971849935,13.877551020408163,38.693792285818944C15.034013605442176,35.688412599787945,16.19047619047619,32.99351402173065,17.346938775510203,30.662815102678515C18.503401360544217,28.332116183626376,19.65986394557823,26.365616923579395,20.816326530612248,24.802516382462965C21.972789115646258,23.239415841346535,23.12925170068027,22.07971401916065,24.285714285714285,21.346527741905245C25.4421768707483,20.613341464649842,26.598639455782312,20.30667073232492,27.755102040816325,20.43262854210163C28.91156462585034,20.558586351878336,30.068027210884352,21.117172703756673,31.224489795918366,22.097253060172534C32.38095238095238,23.07733341658839,33.53741496598639,24.47890777754177,34.69387755102041,26.27403796960891C35.85034013605442,28.069168161676046,37.006802721088434,30.257854184856946,38.16326530612245,32.796468036678554C39.31972789115646,35.335081888500156,40.47619047619048,38.22362356896247,41.632653061224495,41.40451455732567C42.78911564625851,44.585405545688864,43.94557823129252,48.05864584195294,45.102040816326536,51.755001881033664C46.25850340136054,55.45135792011439,47.414965986394556,59.37082970201177,48.57142857142857,63.43528874105788C49.727891156462576,67.49974778010399,50.88435374149659,71.70919407629884,52.0408163265306,75.97971895956576C53.19727891156462,80.25024384283267,54.35374149659863,84.58184731317168,55.51020408163265,88.88818568998414C56.666666666666664,93.19452406679659,57.82312925170068,97.4755973500825,58.97959183673469,101.64606909879353C60.136054421768705,105.81654084750457,61.29251700680272,109.87641106164075,62.44897959183673,113.74475263431393C63.605442176870746,117.61309420698711,64.76190476190476,121.2899071381973,65.91836734693877,124.70189996358785C67.07482993197279,128.11389278897843,68.2312925170068,131.2610655085494,69.38775510204081,134.080684199875C70.54421768707482,136.90030289120065,71.70068027210883,139.39236755428095,72.85714285714285,141.5072028121398C74.01360544217687,143.62203806999867,75.17006802721087,145.3596439226361,76.3265306122449,146.68538393904592C77.48299319727892,148.01112395545573,78.63945578231292,148.92499813563796,79.79591836734693,149.40878983975907C80.95238095238095,149.89258154388014,82.10884353741497,149.94629077194008,83.26530612244898,149.5688469152221C84.421768707483,149.19140305850414,85.578231292517,148.38280611700827,86.73469387755102,147.15917419492564C87.89115646258503,145.935542272843,89.04761904761905,144.2968753701736,90.20408163265307,142.27583772606593C91.36054421768708,140.25480008195825,92.51700680272108,137.85139169641226,93.67346938775509,135.11352072339702C94.8299319727891,132.37564975038174,95.98639455782312,129.3033161898972,97.14285714285714,125.95776216381701C98.29931972789115,122.61220813773681,99.45578231292517,118.99343364606099,100.61224489795917,115.17357324842946C101.7687074829932,111.35371285079793,102.9251700680272,107.33276654721071,104.0816326530612,103.19088555781487C105.23809523809521,99.04900456841902,106.39455782312922,94.78618889321456,107.55102040816324,90.48741103664031C108.70748299319726,86.18863318006608,109.86394557823128,81.85389314212205,111.02040816326529,77.56959712593304C112.17687074829931,73.28530110974403,113.33333333333331,69.05144911531005,114.48979591836732,64.95243630179384C115.64625850340134,60.85342348827763,116.80272108843536,56.889249855679196,117.95918367346937,53.13893495052775C119.11564625850339,49.388620045376314,120.2721088435374,45.85216386767186,121.4285714285714,42.60006009135051C122.58503401360542,39.347956315029165,123.74149659863944,36.38020494009092,124.89795918367346,33.75596340755467C126.05442176870747,31.131721875018414,127.21088435374149,28.85099018488416,128.3673469387755,26.95923112476221C129.52380952380952,25.06747206464025,130.68027210884352,23.564685634530594,131.83673469387753,22.48082751075907C132.99319727891157,21.396969386987543,134.14965986394554,20.73203956955415,135.30612244897958,20.499292385215725C136.46258503401359,20.266545200877296,137.6190476190476,20.46598064963384,138.77551020408163,21.09362330049187C139.93197278911563,21.7212659513499,141.08843537414964,22.77711580430942,142.24489795918367,24.240126158515125C143.40136054421768,25.703136512720825,144.5578231292517,27.57330736817271,145.7142857142857,29.813359819700047C146.8707482993197,32.05341227122737,148.0272108843537,34.66334631883016,149.1836734693877,37.59113704533102C150.34013605442175,40.51892777183188,151.49659863945578,43.764575177230824,152.6530612244898,47.26338240161752C153.8095238095238,50.76218962600423,154.9659863945578,54.51415666937869,156.12244897959184,58.444493988739616C157.27891156462584,62.37483130810054,158.43537414965985,66.48353890344792,159.59183673469386,70.68871617175678C160.7482993197279,74.89389344006563,161.90476190476187,79.19554038133595,163.0612244897959,83.50791045110951C164.2176870748299,87.82028052088306,165.37414965986395,92.14337371915985,166.53061224489798,96.39101600418692C167.687074829932,100.63865828921399,168.843537414966,104.81084966099135,169.421768707483,106.89694534688003C170,108.98304103276871,170,108.98304103276871,170,108.98304103276871" stroke="rgb(31,119,180)" stroke-width="2"/></g></g><g transform="translate(20, 5)"><g transform="translate(0, 480)"><text pointer-events="none" y="3" dy="0.71em" transform="translate(100)" fill="rgb(0,0,0)" text-anchor="middle">cardinal</text></g><g transform="translate(0, 480)"><path d="M0,85.1110289025131Q2.7755102040816326,74.70657082791786,3.4693877551020407,72.16994632482216C4.5102040816326525,68.36500957017863,5.897959183673469,63.320641786300605,6.938775510204081,59.74478387155618S9.367346938775512,51.535114463915974,10.408163265306124,48.330893559859334S12.83673469387755,41.08815289527314,13.877551020408163,38.38331117784524S16.30612244897959,32.39624447082028,17.346938775510203,30.298615443673356S19.775510204081634,25.80590815053721,20.816326530612248,24.399117663532422S23.244897959183675,21.57987984650463,24.285714285714285,20.920012196974767S26.71428571428571,19.88663797120096,27.755102040816325,20S30.183673469387752,20.79368673486074,31.224489795918366,21.675759055635012S33.6530612244898,24.26486496563473,34.69387755102041,25.880482138495154S37.12244897959184,30.1617877413984,38.16326530612245,32.446540208037845S40.591836734693885,38.24936335989791,41.632653061224495,41.11216524942479S44.061224489795926,48.205165703044365,45.102040816326536,51.53188613821702S47.53061224489796,59.632288348767645,48.57142857142857,63.29030148390915S50.99999999999999,72.07516797755345,52.0408163265306,75.91864037249368S54.46938775510204,85.03774624437948,55.51020408163265,88.91345078351068S57.93877551020408,98.00324605952846,58.97959183673469,101.7566706333684S61.40816326530612,110.45477386037108,62.44897959183673,113.93628127577693S64.87755102040816,121.89592652655595,65.91836734693878,124.96672006940747S68.3469387755102,131.87058140592728,69.38775510204081,134.40823822812035S71.81632653061223,139.98108048528832,72.85714285714285,141.88443221736128S75.28571428571428,145.90408376050468,76.3265306122449,147.09724977527353S78.75510204081633,149.40345978211124,79.79591836734694,149.83887231582023S82.22448979591837,150.33969947104617,83.26530612244899,150S85.6938775510204,148.6754779053868,86.73469387755102,147.57420917551244S89.16326530612245,144.47714234720112,90.20408163265307,142.6582084675042S92.63265306122447,137.91206718658003,93.67346938775509,135.4479833108663S96.10204081632652,129.2419812528848,97.14285714285714,126.23098262941264S99.57142857142857,118.81253351225354,100.61224489795919,115.37465915438517S103.04081632653059,107.03951313407974,104.0816326530612,103.31182024362349S106.51020408163264,94.39227328892693,107.55102040816325,90.52337321801011S109.97959183673468,81.37501951874812,111.0204081632653,77.51915310417802S113.44897959183672,68.50670865304065,114.48979591836734,64.81759712087606S116.91836734693877,56.300359637717065,117.95918367346938,52.925076223080765S120.3877551020408,45.24260108865663,121.42857142857142,42.31570768996741S123.85714285714285,35.7742709444353,124.89795918367346,33.412453565152674S127.3265306122449,28.272841648859668,128.3673469387755,26.570258494749908S130.79591836734696,23.037371515815313,131.83673469387756,22.06189920442094S134.26530612244898,20.27658221802534,135.30612244897958,20.067109752120757S137.73469387755102,20.100537712618152,138.77551020408163,20.66541609839038S141.20408163265307,22.51625633848381,142.24489795918367,23.832965657268943S144.6734693877551,27.427431017249994,145.7142857142857,29.443478223624595S148.14285714285714,34.63826871258217,149.18367346938774,37.27328036643294S151.6122448979592,43.86129608068173,152.6530612244898,47.010222582629765S155.0816326530612,54.72882012532834,156.1224489795918,58.26612371275317S158.55102040816328,66.80758695731734,159.59183673469389,70.5922464987953S162.0204081632653,79.61605425981008,163.0612244897959,83.49718732260628S165.48979591836738,92.64358886091227,166.53061224489798,96.46646691743665Q167.2244897959184,99.01505228845289,170,108.98304103276872" stroke="rgb(31,119,180)" stroke-width="2"/></g></g></svg>
@@ -0,0 +1,65 @@
1
+ <html>
2
+ <head>
3
+ <title>Test: Segmented line with interpolation </title>
4
+ <script type="text/javascript" src="protovis-r3.3.js"></script>
5
+ </head>
6
+ <body>
7
+ <h1>Test: Segmented line with interpolation</h1>
8
+ <script type="text/javascript">
9
+
10
+ data = pv.range(0, 10, 0.2).map(function(x) {
11
+ return {x:x, y:Math.sin(x) + 2};
12
+ });
13
+
14
+
15
+ p_w=200
16
+ p_h=150
17
+ w = 20+p_w*2
18
+ h = 20+p_h*4
19
+
20
+ x = pv.Scale.linear(data, function(d) {return d.x;}).range(0, p_w-30)
21
+
22
+
23
+ y = pv.Scale.linear(data, function(d) {return d.y;}).range(0, p_h-20);
24
+
25
+ interpolations=["linear","step-before","step-after","polar","polar-reverse", "basis", "cardinal","monotone"]
26
+
27
+
28
+ vis = new pv.Panel()
29
+ .width(w)
30
+ .height(h)
31
+ .bottom(20)
32
+ .left(20)
33
+ .right(10)
34
+ .top(5)
35
+
36
+ for(var i=0; i<interpolations.length;i++) {
37
+ var inter=interpolations[i];
38
+ n=i%2
39
+ m=Math.floor(i/2)
40
+ panel=vis.add(pv.Panel).
41
+ left(n*(p_w+10)).
42
+ top(m*(p_h+10)).
43
+ width(p_w).
44
+ height(p_h)
45
+
46
+ panel.anchor('top').add(pv.Label).text(inter)
47
+
48
+ panel.add(pv.Line).data(data).
49
+ segmented(true).
50
+ lineWidth(function(d) {return d.y * 2+this.index*0.5}).
51
+ left(function(d){return x(d.x)}).
52
+ bottom(function(d){ return y(d.y)}).
53
+ interpolate(inter);
54
+ }
55
+
56
+
57
+
58
+
59
+ vis.render()
60
+
61
+
62
+
63
+ </script>
64
+ </body>
65
+ </html>