[[1 |first class]] [[2 |second class]] [[3 |third class]] [[4 |fourth class]] [[5 |fifth class]] [[6 |sixth class]] [[7 |seventh class]] [[8 |eighth class]] [[9 |ninth class]] [[10 |tenth class]] [[11 |eleventh class]] [[12 |twelfth class]] h2 d3 is tricky! * tidy tree... ** https://jimmorey.com/js/willow.html ** https://publish.uwo.ca/~jmorey2/ece/d3/d3hail.html ** maybe... https://jimmorey.com/js/hopSkip.html * clearer/better joining... than d3ourNames ** https://publish.uwo.ca/~jmorey2/ece/d3/d3Easy3.html ** https://publish.uwo.ca/~jmorey2/ece/d3/d3Easy4.html ** uses of this technique? on wiki2,wiki3,wiki4 from https://publish.uwo.ca/~jmorey2/ece/w.html * using literals... ** https://observablehq.com/@observablehq/htl h3 Microsoft fix... * https://publish.uwo.ca/~jmorey2/ece/d3/d3Easy5.html ** for the color anyway... I think the thickness can also be fiddled with. *** in this case, all the elements were being added to the axis element which meant that these element inherited axis font choices... *** By separating them it's better, but it highlights how patforms do things in different ways... h3 future d3... * maybe visualize https://jimmorey.com/pithywiki/doku.php?id=mistermind h2 csv / tsv to JSON * spreadsheet formulas (& is the way to do String concatenation) * turning column A into a property (note "" inside quotes turns into ") ** {code}=""""&A$1&""":"""&A2&""""{code} ** drag that across to all columns * turn properties into an Object (if the properties are in columns G through K) ** {code}="{"&textjoin(",",true,G2:K2)&"},"{code} * turn Object into an array (if Objects are in column M) * {code}="["&textjoin(",",true,M:M)&"],"{code}