Plot.ly拒绝改变图表图例的方向

时间:2016-12-14 16:20:24

标签: javascript plot charts plotly

我只是想将图例块的方向更改为水平,但它始终以垂直方式显示。这是相关的代码:

  newData.traces = newData.traces
  .filter(trace => trace.name === 'Self Pay' || trace.name === 'Bank Loan')
  .map(trace => {
    return {
      ...trace,
      mode: 'lines+markers',
      fillcolor: colors[trace.name].fill,
      fill: 'tozeroy',
      line: {
        color: colors[trace.name].line
      }
    };
  });
  newData.layout = {
    ...newData.layout,
    yaxis: {
      ...newData.layout.yaxis,
      title: 'TOTAL SAVINGS (1K)'
    },
    xaxis: {
      ...newData.layout.xaxis,
      title: 'YEARS SINCE INSTALLATION'
    },
    legend: {
      orientation: 'h',
      y: 1.30,
      x: 0.25
    },
    paper_bgcolor: 'transparent',
    plot_bgcolor: 'transparent'
  };
  console.log("newData.layout: ", newData.layout);
  newData.traces = newData.traces.filter(t => data.modeStatus[t.name]);
  Plotly.newPlot($(chart).attr('id'), newData.traces, newData.layout, {displayModeBar: false});

正如您所看到的,我生成布局对象的方式有点复杂,但legend对象显然有orientation: 'h',所以它应该水平显示图例,对吧?

这是相关图表的屏幕截图和控制台中的输出:

screenshot of chart

知道什么可能导致这样的问题?我非常确定它在某一点上工作正常,但由于某种未知的原因,它一直在垂直渲染图例块。

这是所需结果的图片:

the desired result

0 个答案:

没有答案