JSFiddle - React, Tailwind, and code Playground

by Andy Kriebel

HTML

<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts-more.js"></script>

<script src="https://code.highcharts.com/modules/solid-gauge.js"></script>

<div style="width: 900px; height: 250px; margin: 0 auto">
<div id="header" style="text-align:center; font-size:18px; font-family:Lucida Grande">
  <h1 class="verticaltext">
    What characteristics are most important to British men and women?
  </h1>
</div>
<div id="header2" style="text-align:center; font-size:12px; font-family:Lucida Grande; color:gray">
  <h4 class="verticaltext">
    Men and women both rate personality as the most important characteristic in a romantic parter. However, men rate good looks as the second most important characteristic while women prefer a good sense of humour.
  </h4>
</div>
<div id="header" style="text-align:center; font-size:24px; font-family:Lucida Grande">
  <h2 class="verticaltext">
    Men
  </h2>
</div>
<div id="container-speed" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-rpm" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-humour" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-intelligent" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-interests" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-money" style="width: 300px; height: 200px; float: left"></div>
<div id="header" style="text-align:center; font-size:24px; font-family:Lucida Grande">
  <h2 class="verticaltext">
    Women
  </h2>
</div>
<div id="container-wpersonality" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-wlooks" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-whumour" style="width: 300px; height: 200px; float: left"></div>
    <div id="container-wintelligent" style="width: 300px; height: 200px; float: left"></div>
    <div...

JavaScript

var gaugeOptions = {

    chart: {
        type: 'solidgauge'
    },

    title: null,

    pane: {
        center: ['50%', '85%'],
        size: '140%',
        startAngle: -90,
        endAngle: 90,
        background: {
            backgroundColor: (Highcharts.theme && Highcharts.theme.background2) || '#EEE',
            innerRadius: '60%',
            outerRadius: '100%',
            shape: 'arc'
        }
    },

    tooltip: {
        enabled: false
    },

    // the value axis
    yAxis: {
        lineWidth: 0,
        minorTickInterval: null,
        tickAmount: 2,
        title: {
            y: -70
        },
        labels: {
            y: 16
        }
    },

    plotOptions: {
        solidgauge: {
            dataLabels: {
                y: 5,
                borderWidth: 0,
                useHTML: true
            }
        }
    }
};

// The Personality gauge
var chartSpeed = Highcharts.chart('container-speed', Highcharts.merge(gaugeOptions, {
    yAxis: {
        min: 0,
        max: 100,
        title: {
            text: 'Personality'
        }
    },

    credits: {
        enabled: false
    },

    series: [{
        name: 'Personality',
        data: [52],
        dataLabels: {
            format: '<div style="text-align:center"><span style="font-size:25px;color:' +
                ((Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black') + '">{y}</span>' +
                   '<span style="font-size:25px">%</span></div>'
        },
        tooltip: {
            valueSuffix: '%'
        },
				colors: ['#A0CBE8']
    }]

}));

// The Good Looks gauge
var chartRpm = Highcharts.chart('container-rpm', Highcharts.merge(gaugeOptions, {
    yAxis: {
        min: 0,
        max: 100,
        title: {
            text: 'Good Looking'
        }
    },

    credits: {
        enabled: false
    },

    series: [{
        name: 'RPM',
        data: [14],
        dataLabels: {
            format: '<div style="text-align:center"><span...