如何将一长串数字转换为格式化的小时数

how to turn a long set of numbers into formatted hours

我需要将一长串数字格式化为小时。 您可以在花费的时间列下看到很长的数字,这些是需要格式化的小时数,使其看起来不像现在,6,000,需要看起来像 6,000 小时。

我有另一个请求,我能够格式化 Amount spent 列,但是我不知道如何格式化 hAxis 部分以显示美元符号。

我是 Google 图表的新手,它学得很快。文档似乎散开了。

  google.charts.setOnLoadCallback(drawTimeAndAmountSpentTimeLineChart);
    //Amount Completed
    function drawTimeAndAmountSpentTimeLineChart() {
        var data = google.visualization.arrayToDataTable([
            ['Web Design', 'Amount Spent', 'Time Spent'],
            ['Rendering Engines', 5000, 68000],
            ['User Management', 9000, 44000],
            ['Database', 5700, 32000],
            ['Security', 9000, 21000]
        ]);

        var options = {
            title: 'Amount Spent Per Task',
            chartArea: { width: '70%' },
            hAxis: {
                title: 'Total Spent',
                minValue: 0,
                prefix: '$'
            },
            vAxis: {
                title: 'Task'
            }
        };

        var formatter = new google.visualization.NumberFormat({ prefix: '$' });
        formatter.format(data, 1);


        var chart = new google.visualization.BarChart(document.getElementById('timeAndAmountSpentTimeLineChart_div'));
        chart.draw(data, options);
    };

如果不要求太多条,运行 水平高度需要大约 50 像素,而不是很小的高度。这将是一个很大的帮助。

我不知道为什么它不在 js 中绘制fiddle它在我的机器中绘制。

My Fiddle

NumberFormatpattern 属性 用于 'Time Spent'

对于 x 轴标签 --> hAxis.format

请参阅以下工作片段...

google.charts.load('current', {
  callback: function () {
    var data = google.visualization.arrayToDataTable([
        ['Web Design', 'Amount Spent', 'Time Spent'],
        ['Rendering Engines', 5000, 68000],
        ['User Management', 9000, 44000],
        ['Database', 5700, 32000],
        ['Security', 9000, 21000]
    ]);

    var options = {
        title: 'Amount Spent Per Task',
        chartArea: { width: '70%' },
        hAxis: {
            title: 'Total Spent',
            minValue: 0,
            format: '$#,##0'
        },
        vAxis: {
            title: 'Task'
        }
    };

    var formatAmt = new google.visualization.NumberFormat({ prefix: '$' });
    formatAmt.format(data, 1);

    var formatTime = new google.visualization.NumberFormat({ pattern: '#,##0 hrs' });
    formatTime.format(data, 2);

    var chart = new google.visualization.BarChart(document.getElementById('timeAndAmountSpentTimeLineChart_div'));
    chart.draw(data, options);
  },
  packages: ['corechart']
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="timeAndAmountSpentTimeLineChart_div"></div>