TheAlgorithms-C/dd/d8c/adaline__learning_8c_a3c04138a5bfe5d72780bb7e82a18e627_cgraph.svg

404 lines
22 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 6.0.1 (20220911.1526)
-->
<!-- Title: main Pages: 1 -->
<!--zoomable 406 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="text/javascript"><![CDATA[
var edges = document.getElementsByTagName('g');
if (edges && edges.length) {
for (var i=0;i<edges.length;i++) {
if (edges[i].id.substr(0,4)=='edge') {
edges[i].setAttribute('class','edge');
}
}
}
]]></script>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
</use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
</use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="dirArrow">
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040">
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
</use>
</g>
</defs>
<script type="text/javascript">
var viewWidth = 541;
var viewHeight = 406;
var sectionId = 'dynsection-1';
</script>
<script xlink:href="../../svgpan.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>main</title>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Main function.">
<polygon fill="#999999" stroke="#666666" points="38,-207 0,-207 0,-188 38,-188 38,-207"/>
<text text-anchor="middle" x="19" y="-195" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d2/df6/kohonen__som__topology_8c.html#a1440a7779ac56f47a3f355ce4a8c7da0" target="_top" xlink:title="Test that creates a random set of points distributed in four clusters in 2D space and trains an SOM t...">
<polygon fill="white" stroke="#666666" points="112,-207 74,-207 74,-188 112,-188 112,-207"/>
<text text-anchor="middle" x="93" y="-195" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="#63b8ff" d="M38.17,-197.5C45.87,-197.5 55.03,-197.5 63.58,-197.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="63.59,-201 73.59,-197.5 63.59,-194 63.59,-201"/>
</g>
<!-- Node11 -->
<g id="node11" class="node">
<title>Node11</title>
<g id="a_node11"><a xlink:href="../../d6/d76/k__means__clustering_8c.html#a0283886819c7c140a023582b7269e2d0" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="112,-74 74,-74 74,-55 112,-55 112,-74"/>
<text text-anchor="middle" x="93" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node11 -->
<g id="edge13" class="edge">
<title>Node1&#45;&gt;Node11</title>
<path fill="none" stroke="#63b8ff" d="M25.18,-187.93C37,-166.09 66.18,-112.2 81.77,-83.39"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="84.99,-84.8 86.67,-74.34 78.84,-81.47 84.99,-84.8"/>
</g>
<!-- Node16 -->
<g id="node16" class="node">
<title>Node16</title>
<g id="a_node16"><a xlink:href="../../d2/df6/kohonen__som__topology_8c.html#a6d0455dd5c30adda100e95f0423c786e" target="_top" xlink:title="Test that creates a random set of points distributed in eight clusters in 3D space and trains an SOM ...">
<polygon fill="white" stroke="#666666" points="112,-300 74,-300 74,-281 112,-281 112,-300"/>
<text text-anchor="middle" x="93" y="-288" font-family="Helvetica,sans-Serif" font-size="10.00">test3</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node16 -->
<g id="edge18" class="edge">
<title>Node1&#45;&gt;Node16</title>
<path fill="none" stroke="#63b8ff" d="M27.43,-207.1C39.4,-222.56 63.11,-253.19 78.23,-272.71"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="75.61,-275.05 84.5,-280.81 81.14,-270.76 75.61,-275.05"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#gaf5ce14f026d6d231bef29161bac2b485" target="_top" xlink:title="Helper function to generate a random number in a given interval.">
<polygon fill="white" stroke="#666666" points="367.5,-235 313.5,-235 313.5,-216 367.5,-216 367.5,-235"/>
<text text-anchor="middle" x="340.5" y="-223" font-family="Helvetica,sans-Serif" font-size="10.00">_random</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="#63b8ff" d="M112.21,-196.11C140.1,-194.32 194.99,-192.15 241,-198.5 262.05,-201.41 284.97,-207.5 303.4,-213.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="302.55,-216.57 313.14,-216.25 304.66,-209.9 302.55,-216.57"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#gac78022076d889bf2ebfb2c41d4527ceb" target="_top" xlink:title="Function that returns the pointer to (x, y, z) ^th location in the linear 3D array given by:">
<polygon fill="white" stroke="#666666" points="533,-244 440,-244 440,-225 533,-225 533,-244"/>
<text text-anchor="middle" x="486.5" y="-232" font-family="Helvetica,sans-Serif" font-size="10.00">kohonen_data_3d</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node2&#45;&gt;Node4</title>
<path fill="none" stroke="#63b8ff" d="M97.47,-187.76C104.16,-170.64 120.67,-135.61 148,-121.5 184.73,-102.54 199.74,-119.1 241,-121.5 313.81,-125.73 339.52,-106.42 404,-140.5 412.71,-145.1 450.37,-190.86 471.32,-216.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="468.72,-219.14 477.71,-224.74 474.17,-214.75 468.72,-219.14"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#gacb42eda8af6ebd6a141a34ab00a0b710" target="_top" xlink:title="Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given...">
<polygon fill="white" stroke="#666666" points="233,-150 156,-150 156,-131 233,-131 233,-150"/>
<text text-anchor="middle" x="194.5" y="-138" font-family="Helvetica,sans-Serif" font-size="10.00">kohonen_som</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node2&#45;&gt;Node5</title>
<path fill="none" stroke="#63b8ff" d="M108.98,-188C119.73,-181.26 134.63,-172.1 148,-164.5 153.71,-161.26 159.89,-157.9 165.8,-154.75"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="167.54,-157.8 174.76,-150.05 164.28,-151.6 167.54,-157.8"/>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#ga6824dc6d973eb3339af7aef5fea78b0c" target="_top" xlink:title="Save a given n&#45;dimensional data martix to file.">
<polygon fill="white" stroke="#666666" points="233,-263 156,-263 156,-244 233,-244 233,-263"/>
<text text-anchor="middle" x="194.5" y="-251" font-family="Helvetica,sans-Serif" font-size="10.00">save_2d_data</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge8" class="edge">
<title>Node2&#45;&gt;Node8</title>
<path fill="none" stroke="#63b8ff" d="M105.9,-207.12C116.5,-215.38 132.67,-227.22 148,-235.5 150.84,-237.03 153.84,-238.51 156.89,-239.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="155.51,-243.12 166.08,-243.87 158.28,-236.69 155.51,-243.12"/>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#ga49d35f68f5d11d8ef6f8cce0d0e7bcba" target="_top" xlink:title="Create the distance matrix or U&#45;matrix from the trained weights and save to disk.">
<polygon fill="white" stroke="#666666" points="234.5,-300 154.5,-300 154.5,-281 234.5,-281 234.5,-300"/>
<text text-anchor="middle" x="194.5" y="-288" font-family="Helvetica,sans-Serif" font-size="10.00">save_u_matrix</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node9 -->
<g id="edge9" class="edge">
<title>Node2&#45;&gt;Node9</title>
<path fill="none" stroke="#63b8ff" d="M98.62,-207.14C106.62,-222.88 124.46,-254.16 148,-272.5 149.61,-273.75 151.32,-274.93 153.09,-276.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="151.87,-279.35 162.35,-280.95 155.16,-273.17 151.87,-279.35"/>
</g>
<!-- Node10 -->
<g id="node10" class="node">
<title>Node10</title>
<g id="a_node10"><a xlink:href="../../d2/df6/kohonen__som__topology_8c.html#adb5ded007be1fd666fab9affe6764018" target="_top" xlink:title="Creates a random set of points distributed in four clusters in 3D space with centroids at the points.">
<polygon fill="white" stroke="#666666" points="238.5,-226 150.5,-226 150.5,-207 238.5,-207 238.5,-226"/>
<text text-anchor="middle" x="194.5" y="-214" font-family="Helvetica,sans-Serif" font-size="10.00">test_2d_classes</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node10 -->
<g id="edge11" class="edge">
<title>Node2&#45;&gt;Node10</title>
<path fill="none" stroke="#63b8ff" d="M112.25,-200.98C120.24,-202.51 130.08,-204.39 140.12,-206.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="139.68,-209.79 150.16,-208.22 140.99,-202.91 139.68,-209.79"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#ga83abb572c60d202e100595a989dfe123" target="_top" xlink:title="Update weights of the SOM using Kohonen algorithm.">
<polygon fill="white" stroke="#666666" points="404,-169 277,-169 277,-150 404,-150 404,-169"/>
<text text-anchor="middle" x="340.5" y="-157" font-family="Helvetica,sans-Serif" font-size="10.00">kohonen_update_weights</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="#63b8ff" d="M233.33,-145.49C243.65,-146.85 255.18,-148.37 266.73,-149.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="266.49,-153.4 276.86,-151.24 267.41,-146.46 266.49,-153.4"/>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge7" class="edge">
<title>Node6&#45;&gt;Node4</title>
<path fill="none" stroke="#63b8ff" d="M360.03,-169.15C384.87,-182.09 429.17,-205.16 457.93,-220.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="456.55,-223.37 467.04,-224.89 459.79,-217.16 456.55,-223.37"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d1/d6b/group__kohonen__2d.html#gadc22d512c00a9f5799ee067f4fb90b4b" target="_top" xlink:title="Get minimum value and index of the value in a matrix.">
<polygon fill="white" stroke="#666666" points="520,-169 453,-169 453,-150 520,-150 520,-169"/>
<text text-anchor="middle" x="486.5" y="-157" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node6&#45;&gt;Node7</title>
<path fill="none" stroke="#63b8ff" d="M404.24,-159.5C417.14,-159.5 430.44,-159.5 442.45,-159.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="442.63,-163 452.63,-159.5 442.63,-156 442.63,-163"/>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge10" class="edge">
<title>Node9&#45;&gt;Node4</title>
<path fill="none" stroke="#63b8ff" d="M234.61,-282.95C284.93,-273.23 372.65,-256.29 429.89,-245.24"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="430.71,-248.65 439.86,-243.31 429.38,-241.77 430.71,-248.65"/>
</g>
<!-- Node10&#45;&gt;Node3 -->
<g id="edge12" class="edge">
<title>Node10&#45;&gt;Node3</title>
<path fill="none" stroke="#63b8ff" d="M238.7,-219.2C259.35,-220.49 283.78,-222.02 303.41,-223.24"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="303.29,-226.74 313.49,-223.87 303.73,-219.76 303.29,-226.74"/>
</g>
<!-- Node12 -->
<g id="node12" class="node">
<title>Node12</title>
<g id="a_node12"><a xlink:href="../../d8/d71/group__k__means.html#gaf6259432561e794dea0e060f482d15e2" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="220,-37 169,-37 169,-18 220,-18 220,-37"/>
<text text-anchor="middle" x="194.5" y="-25" font-family="Helvetica,sans-Serif" font-size="10.00">kMeans</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge14" class="edge">
<title>Node11&#45;&gt;Node12</title>
<path fill="none" stroke="#63b8ff" d="M112.25,-57.71C125.44,-52.81 143.66,-46.03 159.5,-40.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="160.84,-43.38 168.99,-36.61 158.4,-36.82 160.84,-43.38"/>
</g>
<!-- Node15 -->
<g id="node15" class="node">
<title>Node15</title>
<g id="a_node15"><a xlink:href="../../d6/d76/k__means__clustering_8c.html#a5b4ba704e02672e59cfa35f82e3db28a" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="222.5,-74 166.5,-74 166.5,-55 222.5,-55 222.5,-74"/>
<text text-anchor="middle" x="194.5" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">printEPS</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node15 -->
<g id="edge17" class="edge">
<title>Node11&#45;&gt;Node15</title>
<path fill="none" stroke="#63b8ff" d="M112.25,-64.5C124.56,-64.5 141.23,-64.5 156.28,-64.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="156.36,-68 166.36,-64.5 156.36,-61 156.36,-68"/>
</g>
<!-- Node13 -->
<g id="node13" class="node">
<title>Node13</title>
<g id="a_node13"><a xlink:href="../../d8/d71/group__k__means.html#gadee39a3f17bf5144df5592e48dbfc9f7" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="386.5,-19 294.5,-19 294.5,0 386.5,0 386.5,-19"/>
<text text-anchor="middle" x="340.5" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">calculateCentroid</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node13 -->
<g id="edge15" class="edge">
<title>Node12&#45;&gt;Node13</title>
<path fill="none" stroke="#63b8ff" d="M220.25,-24.41C237.9,-22.2 262.32,-19.15 284.46,-16.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="284.96,-19.84 294.45,-15.13 284.09,-12.9 284.96,-19.84"/>
</g>
<!-- Node14 -->
<g id="node14" class="node">
<title>Node14</title>
<g id="a_node14"><a xlink:href="../../d8/d71/group__k__means.html#gad339c41d3ee9e6729aca9e9ab3f7d2d9" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="383,-56 298,-56 298,-37 383,-37 383,-56"/>
<text text-anchor="middle" x="340.5" y="-44" font-family="Helvetica,sans-Serif" font-size="10.00">calculateNearst</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node14 -->
<g id="edge16" class="edge">
<title>Node12&#45;&gt;Node14</title>
<path fill="none" stroke="#63b8ff" d="M220.25,-30.77C238.82,-33.22 264.88,-36.65 287.91,-39.69"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="287.53,-43.17 297.9,-41.01 288.44,-36.23 287.53,-43.17"/>
</g>
<!-- Node16&#45;&gt;Node3 -->
<g id="edge19" class="edge">
<title>Node16&#45;&gt;Node3</title>
<path fill="none" stroke="#63b8ff" d="M112.08,-298.59C122.38,-302.76 135.66,-307.39 148,-309.5 188.74,-316.46 202.22,-323.79 241,-309.5 276.8,-296.31 308.43,-263.68 325.68,-243.19"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="328.56,-245.2 332.16,-235.24 323.13,-240.78 328.56,-245.2"/>
</g>
<!-- Node16&#45;&gt;Node4 -->
<g id="edge20" class="edge">
<title>Node16&#45;&gt;Node4</title>
<path fill="none" stroke="#63b8ff" d="M96.06,-300.01C100.99,-320.11 115.53,-366.61 148,-385.5 183.73,-406.29 201.24,-396.79 241,-385.5 335.15,-358.77 428.57,-284.34 467.1,-251.01"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="469.67,-253.42 474.88,-244.19 465.05,-248.15 469.67,-253.42"/>
</g>
<!-- Node16&#45;&gt;Node5 -->
<g id="edge21" class="edge">
<title>Node16&#45;&gt;Node5</title>
<path fill="none" stroke="#63b8ff" d="M99.11,-280.84C108.25,-263.79 128.29,-227.43 148,-198.5 157.65,-184.34 169.65,-169.13 178.9,-157.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="181.67,-159.98 185.36,-150.05 176.28,-155.51 181.67,-159.98"/>
</g>
<!-- Node16&#45;&gt;Node8 -->
<g id="edge22" class="edge">
<title>Node16&#45;&gt;Node8</title>
<path fill="none" stroke="#63b8ff" d="M112.25,-283.71C125.17,-278.91 142.89,-272.32 158.5,-266.52"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="159.72,-269.8 167.87,-263.03 157.28,-263.23 159.72,-269.8"/>
</g>
<!-- Node16&#45;&gt;Node9 -->
<g id="edge23" class="edge">
<title>Node16&#45;&gt;Node9</title>
<path fill="none" stroke="#63b8ff" d="M112.25,-290.5C121.36,-290.5 132.87,-290.5 144.34,-290.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="144.34,-294 154.34,-290.5 144.34,-287 144.34,-294"/>
</g>
<!-- Node17 -->
<g id="node17" class="node">
<title>Node17</title>
<g id="a_node17"><a xlink:href="../../d2/df6/kohonen__som__topology_8c.html#a5bb02a8322d717ead1b11182c5f02a3a" target="_top" xlink:title="Creates a random set of points distributed in four clusters in 3D space with centroids at the points.">
<polygon fill="white" stroke="#666666" points="241,-376 148,-376 148,-357 241,-357 241,-376"/>
<text text-anchor="middle" x="194.5" y="-364" font-family="Helvetica,sans-Serif" font-size="10.00">test_3d_classes2</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node17 -->
<g id="edge24" class="edge">
<title>Node16&#45;&gt;Node17</title>
<path fill="none" stroke="#63b8ff" d="M102.47,-300.17C112.56,-311.3 130.28,-329.69 148,-342.5 152.7,-345.9 157.95,-349.12 163.17,-352.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="161.91,-355.33 172.39,-356.92 165.19,-349.15 161.91,-355.33"/>
</g>
<!-- Node17&#45;&gt;Node3 -->
<g id="edge25" class="edge">
<title>Node17&#45;&gt;Node3</title>
<path fill="none" stroke="#63b8ff" d="M217.85,-356.87C225.58,-352.99 234.05,-348.1 241,-342.5 277.67,-312.96 310.8,-268.2 327.7,-243.48"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="330.69,-245.32 333.36,-235.06 324.88,-241.41 330.69,-245.32"/>
</g>
</g>
</svg>
<g id="navigator" transform="translate(0 0)" fill="#404254">
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
<g id="arrow_out" transform="scale(0.3 0.3)">
<a xlink:href="adaline__learning_8c_a3c04138a5bfe5d72780bb7e82a18e627_cgraph_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
</svg>