【问题标题】:Is it possible to put a trendline on a Google Barchart?是否可以在 Google Barchart 上放置趋势线?
【发布时间】:2016-10-12 11:05:45
【问题描述】:

我正在尝试在条形图上放置一条趋势线。当我将趋势线添加到选项时,没有出现趋势线。有没有办法在这样的条形图上制作趋势线?

<script type="text/javascript">
  google.charts.load('current', {'packages':['bar']});
  google.charts.setOnLoadCallback(drawChart);

  function drawChart() {
    var data = google.visualization.arrayToDataTable([
      ['Year', 'Sales', 'Expenses'],
      ['2014', 1000, 400],
      ['2015', 1170, 460],
      ['2016', 660, 1120],
      ['2017', 1030, 540]
    ]);

    var options = {
    trendlines: {
        0: {
            color: 'green',
        visibleInLegend: true,
        }
    },
      chart: {
        title: 'Last 7 Days',
        subtitle: 'Sales, Expenses, and Profit: 2014-2017',
      },
      bars: 'vertical',
      vAxis: {format: 'decimal'},
      height: 400,
      colors: ['#1b9e77', '#d95f02', '#7570b3']
    };

    var chart = new google.charts.Bar(document.getElementById('chart_div'));

    chart.draw(data, google.charts.Bar.convertOptions(options));


  }
</script>

【问题讨论】:

    标签: javascript charts google-api bar-chart google-visualization


    【解决方案1】:

    1. trendlines.* 列在the several options that don't work on Material charts

    材质图表 --> packages: ['bar'] -- google.charts.Bar

    但是,有一种方法可以在条形图上制作趋势线,使用...

    核心图表 --> packages: ['corechart'] -- google.visualization.ColumnChart

    您可以使用以下配置选项使图表接近材质的外观和感觉

    theme: 'material'

    2.要让trendlines.*Core 图表上工作,它必须建立在Continuous axis

    表示轴值不能是字符串

    请参阅以下工作 sn-p...

    google.charts.load('current', {
      callback: drawChart,
      packages:['corechart']
    });
    
    function drawChart() {
      var data = google.visualization.arrayToDataTable([
        ['Year', 'Sales', 'Expenses'],
        [new Date(2014, 0, 1), 1000, 400],
        [new Date(2015, 0, 1), 1170, 460],
        [new Date(2016, 0, 1), 660, 1120],
        [new Date(2017, 0, 1), 1030, 540]
      ]);
    
      var options = {
        colors: ['#1b9e77', '#d95f02'],
        hAxis: {
          format: 'yyyy',
          ticks: [new Date(2014, 0, 1), new Date(2015, 0, 1), new Date(2016, 0, 1), new Date(2017, 0, 1)]
        },
        height: 400,
        theme: 'material',
        title: 'Last 7 Days',
        trendlines: {
          0: {
            color: 'green',
            visibleInLegend: true
          }
        },
        vAxis: {
          format: 'decimal'
        }
      };
    
      var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
      chart.draw(data, options);
    }
    <script src="https://www.gstatic.com/charts/loader.js"></script>
    <div id="chart_div"></div>

    【讨论】:

      猜你喜欢
      • 2012-03-07
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      • 2022-09-30
      • 2021-02-18
      • 1970-01-01
      • 1970-01-01
      • 2018-03-27
      相关资源
      最近更新 更多