TheAlgorithms-C/dd/d8c/adaline__learning_8c_a3c04138a5bfe5d72780bb7e82a18e627_cgraph.svg

473 lines
23 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 9.0.0 (20230911.1827)
-->
<!-- 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[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<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="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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="application/ecmascript">
var viewWidth = 538;
var viewHeight = 406;
var sectionId = 'dynsection-1';
</script>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>main</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Main function.">
<polygon fill="#999999" stroke="#666666" points="37,-207.25 0,-207.25 0,-188 37,-188 37,-207.25"/>
<text text-anchor="middle" x="18.5" y="-193.75" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><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="110.75,-207.25 73,-207.25 73,-188 110.75,-188 110.75,-207.25"/>
<text text-anchor="middle" x="91.88" y="-193.75" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M37.14,-197.62C44.55,-197.62 53.37,-197.62 61.69,-197.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="61.43,-201.13 71.43,-197.63 61.43,-194.13 61.43,-201.13"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="../../d6/d76/k__means__clustering_8c.html#a0283886819c7c140a023582b7269e2d0" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="110.75,-74.25 73,-74.25 73,-55 110.75,-55 110.75,-74.25"/>
<text text-anchor="middle" x="91.88" y="-60.75" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node11 -->
<g id="edge13_Node000001_Node000011" class="edge">
<title>Node1&#45;&gt;Node11</title>
<g id="a_edge13_Node000001_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M24.86,-187.63C36.59,-165.77 64.71,-113.39 80.19,-84.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="83.09,-86.54 84.73,-76.07 76.92,-83.23 83.09,-86.54"/>
</a>
</g>
</g>
<!-- Node16 -->
<g id="Node000016" class="node">
<title>Node16</title>
<g id="a_Node000016"><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="110.75,-300.25 73,-300.25 73,-281 110.75,-281 110.75,-300.25"/>
<text text-anchor="middle" x="91.88" y="-286.75" font-family="Helvetica,sans-Serif" font-size="10.00">test3</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node16 -->
<g id="edge18_Node000001_Node000016" class="edge">
<title>Node1&#45;&gt;Node16</title>
<g id="a_edge18_Node000001_Node000016"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M27.14,-207.58C38.84,-222.82 61.4,-252.22 76.3,-271.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="73.51,-273.74 82.37,-279.54 79.06,-269.48 73.51,-273.74"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><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="365.12,-235.25 311.62,-235.25 311.62,-216 365.12,-216 365.12,-235.25"/>
<text text-anchor="middle" x="338.38" y="-221.75" font-family="Helvetica,sans-Serif" font-size="10.00">_random</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M111.01,-196.02C138.79,-193.92 193.45,-191.22 239.25,-197.62 259.88,-200.51 282.26,-206.65 300.43,-212.45"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="299.12,-215.7 309.71,-215.51 301.31,-209.06 299.12,-215.7"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><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="530,-244.25 437.5,-244.25 437.5,-225 530,-225 530,-244.25"/>
<text text-anchor="middle" x="483.75" y="-230.75" font-family="Helvetica,sans-Serif" font-size="10.00">kohonen_data_3d</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M96.43,-187.62C103.17,-170.4 119.6,-135.66 146.75,-121.62 183.27,-102.75 198.21,-119.23 239.25,-121.62 311.73,-125.85 337.35,-106.63 401.5,-140.62 410.07,-145.17 446.72,-189.75 467.75,-215.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="464.78,-217.73 473.77,-223.34 470.24,-213.35 464.78,-217.73"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><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="231.38,-150.25 154.62,-150.25 154.62,-131 231.38,-131 231.38,-150.25"/>
<text text-anchor="middle" x="193" y="-136.75" font-family="Helvetica,sans-Serif" font-size="10.00">kohonen_som</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4_Node000002_Node000005" class="edge">
<title>Node2&#45;&gt;Node5</title>
<g id="a_edge4_Node000002_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M108.75,-187.54C119.4,-180.87 133.79,-172.02 146.75,-164.62 151.83,-161.72 157.29,-158.73 162.6,-155.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="163.95,-159.13 171.14,-151.35 160.67,-152.94 163.95,-159.13"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><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="231.38,-263.25 154.62,-263.25 154.62,-244 231.38,-244 231.38,-263.25"/>
<text text-anchor="middle" x="193" y="-249.75" font-family="Helvetica,sans-Serif" font-size="10.00">save_2d_data</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge8_Node000002_Node000008" class="edge">
<title>Node2&#45;&gt;Node8</title>
<g id="a_edge8_Node000002_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M105.17,-207.57C115.75,-215.81 131.65,-227.45 146.75,-235.62 148.92,-236.8 151.19,-237.95 153.51,-239.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="151.82,-242.13 162.39,-242.98 154.66,-235.73 151.82,-242.13"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><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="232.88,-300.25 153.12,-300.25 153.12,-281 232.88,-281 232.88,-300.25"/>
<text text-anchor="middle" x="193" y="-286.75" font-family="Helvetica,sans-Serif" font-size="10.00">save_u_matrix</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node9 -->
<g id="edge9_Node000002_Node000009" class="edge">
<title>Node2&#45;&gt;Node9</title>
<g id="a_edge9_Node000002_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M97.62,-207.52C105.65,-223.33 123.38,-254.36 146.75,-272.62 147.87,-273.5 149.05,-274.34 150.26,-275.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="148.31,-278.07 158.75,-279.88 151.72,-271.96 148.31,-278.07"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><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="236.62,-226.25 149.38,-226.25 149.38,-207 236.62,-207 236.62,-226.25"/>
<text text-anchor="middle" x="193" y="-212.75" font-family="Helvetica,sans-Serif" font-size="10.00">test_2d_classes</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node10 -->
<g id="edge11_Node000002_Node000010" class="edge">
<title>Node2&#45;&gt;Node10</title>
<g id="a_edge11_Node000002_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M111.06,-201.11C118.85,-202.6 128.41,-204.44 138.19,-206.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="137.28,-209.7 147.76,-208.14 138.59,-202.82 137.28,-209.7"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><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="401.5,-169.25 275.25,-169.25 275.25,-150 401.5,-150 401.5,-169.25"/>
<text text-anchor="middle" x="338.38" y="-155.75" font-family="Helvetica,sans-Serif" font-size="10.00">kohonen_update_weights</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5_Node000005_Node000006" class="edge">
<title>Node5&#45;&gt;Node6</title>
<g id="a_edge5_Node000005_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M231.67,-145.62C241.63,-146.94 252.72,-148.41 263.88,-149.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="263.14,-153.32 273.51,-151.16 264.06,-146.38 263.14,-153.32"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge7_Node000006_Node000004" class="edge">
<title>Node6&#45;&gt;Node4</title>
<g id="a_edge7_Node000006_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M358.71,-169.74C383.11,-182.5 425.3,-204.57 453.61,-219.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="451.9,-222.43 462.38,-223.97 455.14,-216.23 451.9,-222.43"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><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="516.88,-169.25 450.62,-169.25 450.62,-150 516.88,-150 516.88,-169.25"/>
<text text-anchor="middle" x="483.75" y="-155.75" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge6_Node000006_Node000007" class="edge">
<title>Node6&#45;&gt;Node7</title>
<g id="a_edge6_Node000006_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M401.84,-159.62C414.41,-159.62 427.36,-159.62 439.11,-159.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="438.9,-163.13 448.9,-159.63 438.9,-156.13 438.9,-163.13"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge10_Node000009_Node000004" class="edge">
<title>Node9&#45;&gt;Node4</title>
<g id="a_edge10_Node000009_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M233.24,-283.01C283.12,-273.34 369.55,-256.58 426.45,-245.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="426.77,-249.05 435.93,-243.71 425.44,-242.17 426.77,-249.05"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node3 -->
<g id="edge12_Node000010_Node000003" class="edge">
<title>Node10&#45;&gt;Node3</title>
<g id="a_edge12_Node000010_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M237.02,-219.33C257.1,-220.59 280.78,-222.07 300.09,-223.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="299.77,-226.77 309.97,-223.9 300.2,-219.78 299.77,-226.77"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="../../d8/d71/group__k__means.html#gaf6259432561e794dea0e060f482d15e2" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="218.25,-37.25 167.75,-37.25 167.75,-18 218.25,-18 218.25,-37.25"/>
<text text-anchor="middle" x="193" y="-23.75" font-family="Helvetica,sans-Serif" font-size="10.00">kMeans</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge14_Node000011_Node000012" class="edge">
<title>Node11&#45;&gt;Node12</title>
<g id="a_edge14_Node000011_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M111.06,-57.84C123.95,-53.02 141.67,-46.41 157.23,-40.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="158.02,-44.04 166.17,-37.27 155.57,-37.49 158.02,-44.04"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="../../d6/d76/k__means__clustering_8c.html#a5b4ba704e02672e59cfa35f82e3db28a" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="220.5,-74.25 165.5,-74.25 165.5,-55 220.5,-55 220.5,-74.25"/>
<text text-anchor="middle" x="193" y="-60.75" font-family="Helvetica,sans-Serif" font-size="10.00">printEPS</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node15 -->
<g id="edge17_Node000011_Node000015" class="edge">
<title>Node11&#45;&gt;Node15</title>
<g id="a_edge17_Node000011_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M111.06,-64.62C123.05,-64.62 139.21,-64.62 153.94,-64.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="153.83,-68.13 163.82,-64.63 153.82,-61.13 153.83,-68.13"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="../../d8/d71/group__k__means.html#gadee39a3f17bf5144df5592e48dbfc9f7" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="384.25,-19.25 292.5,-19.25 292.5,0 384.25,0 384.25,-19.25"/>
<text text-anchor="middle" x="338.38" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">calculateCentroid</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node13 -->
<g id="edge15_Node000012_Node000013" class="edge">
<title>Node12&#45;&gt;Node13</title>
<g id="a_edge15_Node000012_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M218.65,-24.53C235.75,-22.38 259.25,-19.43 280.83,-16.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="281.24,-20.2 290.73,-15.48 280.37,-13.25 281.24,-20.2"/>
</a>
</g>
</g>
<!-- Node14 -->
<g id="Node000014" class="node">
<title>Node14</title>
<g id="a_Node000014"><a xlink:href="../../d8/d71/group__k__means.html#gad339c41d3ee9e6729aca9e9ab3f7d2d9" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="380.5,-56.25 296.25,-56.25 296.25,-37 380.5,-37 380.5,-56.25"/>
<text text-anchor="middle" x="338.38" y="-42.75" font-family="Helvetica,sans-Serif" font-size="10.00">calculateNearst</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node14 -->
<g id="edge16_Node000012_Node000014" class="edge">
<title>Node12&#45;&gt;Node14</title>
<g id="a_edge16_Node000012_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M218.65,-30.89C236.8,-33.3 262.15,-36.66 284.77,-39.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="284.08,-43.09 294.45,-40.94 285,-36.15 284.08,-43.09"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node3 -->
<g id="edge19_Node000016_Node000003" class="edge">
<title>Node16&#45;&gt;Node3</title>
<g id="a_edge19_Node000016_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M110.91,-298.72C121.19,-302.88 134.43,-307.52 146.75,-309.62 187.27,-316.56 200.69,-323.88 239.25,-309.62 274.3,-296.67 305.29,-265 322.66,-244.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="325.28,-246.79 328.89,-236.83 319.85,-242.36 325.28,-246.79"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node4 -->
<g id="edge20_Node000016_Node000004" class="edge">
<title>Node16&#45;&gt;Node4</title>
<g id="a_edge20_Node000016_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M95,-300.44C99.97,-320.7 114.47,-366.82 146.75,-385.62 182.27,-406.32 199.71,-396.89 239.25,-385.62 332.26,-359.13 424.43,-285.79 463.4,-252.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="465.38,-254.96 470.58,-245.73 460.76,-249.7 465.38,-254.96"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node5 -->
<g id="edge21_Node000016_Node000005" class="edge">
<title>Node16&#45;&gt;Node5</title>
<g id="a_edge21_Node000016_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M98.08,-280.56C107.2,-263.18 127,-226.62 146.75,-197.62 155.88,-184.22 167.24,-169.92 176.29,-159"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="178.8,-161.45 182.56,-151.54 173.45,-156.94 178.8,-161.45"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node8 -->
<g id="edge22_Node000016_Node000008" class="edge">
<title>Node16&#45;&gt;Node8</title>
<g id="a_edge22_Node000016_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M111.06,-283.84C123.2,-279.31 139.61,-273.18 154.48,-267.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="155.4,-271.02 163.54,-264.25 152.95,-264.47 155.4,-271.02"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node9 -->
<g id="edge23_Node000016_Node000009" class="edge">
<title>Node16&#45;&gt;Node9</title>
<g id="a_edge23_Node000016_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M111.06,-290.62C119.77,-290.62 130.68,-290.62 141.64,-290.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="141.47,-294.13 151.47,-290.63 141.47,-287.13 141.47,-294.13"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><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="239.25,-376.25 146.75,-376.25 146.75,-357 239.25,-357 239.25,-376.25"/>
<text text-anchor="middle" x="193" y="-362.75" font-family="Helvetica,sans-Serif" font-size="10.00">test_3d_classes2</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node17 -->
<g id="edge24_Node000016_Node000017" class="edge">
<title>Node16&#45;&gt;Node17</title>
<g id="a_edge24_Node000016_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M101.69,-300.69C111.82,-311.85 129.28,-329.95 146.75,-342.62 150.91,-345.64 155.5,-348.52 160.11,-351.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="158.3,-354.17 168.76,-355.85 161.63,-348.01 158.3,-354.17"/>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node3 -->
<g id="edge25_Node000017_Node000003" class="edge">
<title>Node17&#45;&gt;Node3</title>
<g id="a_edge25_Node000017_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M217.16,-356.51C224.59,-352.71 232.61,-347.99 239.25,-342.62 275.14,-313.59 307.6,-269.92 324.7,-244.96"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="327.53,-247.02 330.2,-236.76 321.72,-243.11 327.53,-247.02"/>
</a>
</g>
</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()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</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>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>