【问题标题】:Google charts - histogram: extra bars appearing alongside data谷歌图表 - 直方图:数据旁边出现额外的条形图
【发布时间】:2017-09-11 14:57:01
【问题描述】:

我在 JavaScript 中使用 Google 的 histogram 功能来绘制随机模型的输出,它会在原本不错的图表上覆盖额外的条形图。

图表是通过使用不同的输入运行calculate_display_coverage() 函数数百次而生成的。我向你保证,函数的内部工作在这里没有问题(我不能真正发布我的整个 Fiddle,但我会在我的代码 sn-p 中显示数据的样子)。

gender = {
    gender1: "Male",
    gender2: "Female"
};
device = {
    device1: "Tablet",
    device2: "Mobile",
    device3: "Desktop"
};
var paramstring = "";

resultArray = [];
resultArray[0] = ['Run','Coverage'];
var q = 1;

for (var x = 0; x < 100; x++) {
    for (var y in gender) {
        for (var w in device) {
            for (var z = 1950; z < 1980; z++) {
                paramstring = "09/21/";
                paramstring += z.toString();
                resultArray[q] = [q,calculate_display_coverage('SIW', y, paramstring, w).displayed];
                q++
            }
        }
    }
}

// dataset looks like [['Run','Coverage'],[1,80000],[2,42000],...]

google.charts.load("current", {packages:["corechart"]});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
    var data = google.visualization.arrayToDataTable(resultArray);

    var options = {
        title: 'Model output by coverage',
        legend: { position: 'none' },
    };

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

使用 HTML:

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js">
</script>

<body>
    <div id="chart_div" style="width: 900px; height: 500px;"></div>
</body>

在这种情况下,x = 100,直方图包括这些额外的条

格式略有不同,但多次运行时出现相同问题,x = 2000

有人见过这个吗?

【问题讨论】:

    标签: javascript charts google-visualization histogram


    【解决方案1】:

    问题在于您的数据的两列都是数字。目前它的格式为

    [['Run','Count'],[1,80000],[2,42000],...]
    

    所以直方图包含索引值作为数据点。您需要将它们转换为字符串,因此在上面的代码中,语句应该是

    resultArray[q] = [q.toString(),calculate_display_coverage('SIW', y, paramstring, w).displayed];
    // [['Run','Count'],['1',80000],['2',42000],...]
    

    这将删除多余的条。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-23
      • 2021-07-08
      • 2018-04-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多