在GViz中显示列上方的阶梯区域线

时间:2012-12-17 16:39:08

标签: google-visualization

我有一个我使用GViz创建的图表,如下所示: Stepped Area and Column Chart

这是一个组合图表,其中一个系列显示为列,另一个系列显示为阶梯区域(0%不透明度,connectSteps:false)。我不想使用line,因为它只在每列的中间有一个点。

我正在尝试将线条显示在列上方,因为它们代表了目标数量。我已经尝试切换数据列的顺序,但它以相同的方式显示。有没有办法在系列上指定z-index?

附注:这是Google网站上的图表,但通过编辑HTML,我可以指定通过GViz提供的大多数选项。我已经查看了文档,但没有看到要做的事情。

1 个答案:

答案 0 :(得分:2)

目前无法在组合图表上调整Z轴(因此您无法按照自己的方式进行操作)。

但是,如果您想要变得棘手,可以使用XY散点图重新创建相同类型的图表。

示例(复制粘贴到Google Playground中):

<!--
You are free to copy and use this sample in accordance with the terms of the
Apache license (http://www.apache.org/licenses/LICENSE-2.0.html)
-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>
      Google Visualization API Sample
    </title>
    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    <script type="text/javascript">
      google.load('visualization', '1', {packages: ['corechart']});
    </script>
    <script type="text/javascript">
      function drawVisualization() {
        // Create and populate the data table.
        var data = new google.visualization.DataTable();
        data.addColumn('number', 'X');
        data.addColumn('number', 'Sales');
        data.addColumn('number', 'Targets');
        data.addRows([
          [1, 0, null],
          [1, 1, null],
          [1, null, null],
          [2, 0, null],
          [2, 3, null],
          [2, null, null],
          [3, 0, null],
          [3, 3, null],
          [3, null, null], 
          [0.5,null,1.5],
          [1.5,null,1.5],
          [1.5,null,null],    
          [1.5,null,2.5],
          [2.5,null,2.5],
          [2.5,null,null],    
          [2.5,null,3],
          [3.5,null,3],
        ]);

        // Create and draw the visualization.
        var chart = new google.visualization.ScatterChart(
        document.getElementById('visualization'));
        chart.draw(data, {
          width: 600,
          height: 400,
          series: {0:{color: 'black', lineWidth: 40, pointSize: 0}, 1:{color: 'red', lineWidth: 10, pointSize: 0}}  });
      }

      google.setOnLoadCallback(drawVisualization);
    </script>
  </head>
  <body style="font-family: Arial;border: 0 none;">
    <div id="visualization" style="width: 600px; height: 400px;"></div>
  </body>
</html>