javascript - 如何使用 Google Chart 在 v 轴上显示基线值?

标签 javascript charts google-visualization

我在 Google Chart 中向 v 轴添加基线。

vAxis: {
      title: 'Popularity', baseline: 20, baselineColor: 'red'
    }

enter image description here

我想像这样显示基线的值(value)。

enter image description here

我该怎么做?

这是 jsfiddle 中的全部代码。 https://jsfiddle.net/ztn5fmnw/

最佳答案

需要更多选项才能获得与发布的图像完全相同的图像

但首先,需要在数据表中添加另一列
新列中不需要数据,
只需在加载原始数据后添加即可

data.addColumn('number', 'y1');

新系列将被分配到第二个 y 轴(在右侧)
这将允许自定义第二个 y 轴

series: {
  1: {
    targetAxisIndex: 1,     // <-- assign y1 to second y-axis
    visibleInLegend: false  // <-- hide from legend
  }
},

接下来,两个y轴需要相同的范围
使用 vAxis.viewWindow 为两者设置范围

vAxis: {
  title: 'Popularity', baseline: 20, baselineColor: 'red',
  viewWindow: {
    min: 0,
    max: 100
  }
},

然后使用 vAxes 选项仅自定义第二个 y 轴
使用ticks添加基线的值

vAxes: {
  1: {
    textStyle: {
      color: 'red'
    },
    ticks: [20]
  }
}

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

google.charts.load('current', {
  packages: ['corechart']
}).then(function () {
  var data = new google.visualization.DataTable();
  data.addColumn('number', 'X');
  data.addColumn('number', 'y0');
  data.addRows([
    [0, 0],   [1, 10],  [2, 23],  [3, 17],  [4, 18],  [5, 9],
    [6, 11],  [7, 27],  [8, 33],  [9, 40],  [10, 32], [11, 35],
    [12, 30], [13, 40], [14, 42], [15, 47], [16, 44], [17, 48],
    [18, 52], [19, 54], [20, 42], [21, 55], [22, 56], [23, 57],
    [24, 60], [25, 50], [26, 52], [27, 51], [28, 49], [29, 53],
    [30, 55], [31, 60], [32, 61], [33, 59], [34, 62], [35, 65],
    [36, 62], [37, 58], [38, 55], [39, 61], [40, 64], [41, 65],
    [42, 63], [43, 66], [44, 67], [45, 69], [46, 69], [47, 70],
    [48, 72], [49, 68], [50, 66], [51, 65], [52, 67], [53, 70],
    [54, 71], [55, 72], [56, 73], [57, 75], [58, 70], [59, 68],
    [60, 64], [61, 60], [62, 65], [63, 67], [64, 68], [65, 69],
    [66, 70], [67, 72], [68, 75], [69, 80]
  ]);
  data.addColumn('number', 'y1');

  var options = {
    hAxis: {
      title: 'Time'
    },
    series: {
      1: {
        targetAxisIndex: 1,
        visibleInLegend: false
      }
    },
    vAxis: {
      title: 'Popularity', baseline: 20, baselineColor: 'red',
      viewWindow: {
        min: 0,
        max: 100
      }
    },
    vAxes: {
      1: {
        textStyle: {
          color: 'red'
        },
        ticks: [20]
      }
    }
  };

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

关于javascript - 如何使用 Google Chart 在 v 轴上显示基线值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46395803/

相关文章:

javascript - Google 图表时间线的替代方案

javascript - 谷歌图表 interpolateNulls 不工作

php - 来自 php 的 Google Table Chart 创建了 Json

javascript - 垄断选择随机卡和流行阵列

delphi - 防止系列在 Delphi TChart 中使用 clWhite

javascript - 代码到html转换器

jquery - 如何使用流程图进行向下钻取

javascript - 如何仅获取特定国家/地区的地理谷歌图表

javascript - 表单验证规则动态变化

javascript - 调用 onClick 方法之前的 ASP 警报文本