JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://www.google.com/jsapi?fake=.js"></script>
<div id="visualization"></div>

JavaScript

google.load('visualization', '1', {packages: ['controls']});
google.setOnLoadCallback(drawVisualization);

function drawVisualization() {
    // Create and populate the data table.
    var data = google.visualization.arrayToDataTable([
        ['Location', 'Parent', 'Market trade volume (size)', 'Market increase/decrease (color)'],
        ['Global', null, 0, 0],
        ['America', 'Global', 0, 0],
        ['Europe', 'Global', 0, 0],
        ['Asia', 'Global', 0, 0],
        ['Australia', 'Global', 0, 0],
        ['Africa', 'Global', 0, 0],
        ['Brazil', 'America', 11, 10],
        ['USA', 'America', 52, 31],
        ['Mexico', 'America', 24, 12],
        ['Canada', 'America', 16, -23],
        ['France', 'Europe', 42, -11],
        ['Germany', 'Europe', 31, -2],
        ['Sweden', 'Europe', 22, -13],
        ['Italy', 'Europe', 17, 4],
        ['UK', 'Europe', 21, -5],
        ['China', 'Asia', 36, 4],
        ['Japan', 'Asia', 20, -12],
        ['India', 'Asia', 40, 63],
        ['Laos', 'Asia', 4, 34],
        ['Mongolia', 'Asia', 1, -5],
        ['Israel', 'Asia', 12, 24],
        ['Iran', 'Asia', 18, 13],
        ['Pakistan', 'Asia', 11, -52],
        ['Egypt', 'Africa', 21, 0],
        ['S. Africa', 'Africa', 30, 43],
        ['Sudan', 'Africa', 12, 2],
        ['Congo', 'Africa', 10, 12],
        ['Zair', 'Africa', 8, 10],
        ['AZ', 'USA', 10, 41],
        ['MA', 'USA', 23, 33],
        ['NY', 'USA', 40, 19]
    ]);

    function setNodeValues(dt, row) {
        var childRows = dt.getFilteredRows([{
            column: 1,
            value: dt.getValue(row, 0)}]);
        if (childRows.length > 0) {
            // this is a parent, recurse down, and set value when w
            var vals = [];
            var colors = [];
            var tmp;
            for (var i = 0; i < childRows.length; i++) {
                tmp = setNodeValues(dt, childRows[i]);
                vals.push(tmp.val);
                colors.push(tmp.color);
            }
     ...