谷歌图表烛台颜色

时间:2017-12-04 21:01:46

标签: javascript charts google-visualization

我正在尝试从Google图表中自定义Candlecharts。

我已经找到了如何更改蜡烛本身的颜色,但没有找到指示最高和最低值的线条之一:

enter image description here

这些是我提供的选项:

    let options = {
      legend: 'none',
      candlestick: {
        risingColor: {stroke: '#4CAF50', fill: 'white'},
        fallingColor: {stroke: '#F44336'}
      }
    }

你可以在这个jsFiddle上试试:https://jsfiddle.net/El_Matella/h5p36t3w/2/

我无法在文档中找到如何更改它,有人有想法吗? (https://developers.google.com/chart/interactive/docs/gallery/candlestickchart

2 个答案:

答案 0 :(得分:3)

如果你想让所有的线都是相同的颜色,
您可以使用colors选项...

请参阅以下工作代码段...



google.charts.load('current', {'packages':['corechart']});

google.charts.setOnLoadCallback(drawChart);

function drawChart() {
  var data = google.visualization.arrayToDataTable([
    ['Mon', 20, 28, 38, 45],
    ['Tue', 31, 38, 55, 66],
    ['Wed', 50, 55, 77, 80],
    ['Thu', 77, 77, 66, 50],
    ['Fri', 68, 66, 22, 15]
    // Treat first row as data as well.
  ], true);

  var options = {
    legend:'none',
    candlestick: {
      risingColor: {stroke: '#4CAF50', fill: 'white'},
      fallingColor: {stroke: '#F44336'}
    },
    colors: ['magenta']
  };

  var chart = new google.visualization.CandlestickChart(document.getElementById('chart_div'));

  chart.draw(data, options);
}

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div" style="width: 900px; height: 500px;"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

由于我将 jQuery 用于其他东西,但仍然没有来自 Google 的官方解决方案 (afaik),所以我最终得到了这个:

jQuery('div[id*="chart_div"] svg g g[clip-path] g:nth-of-type(3) g' ).each(function() {
    jQuery(this).find('rect:first-of-type').attr('fill',jQuery(this).find('rect:nth-of-type(2)').attr('fill'));
});

(请注意,官方示例只有一个图表,我的页面有多个,因此每个都有一个唯一的 id,如 chart_div_uniqueid,因此所有内容都包含在一个 .each 中。)