Y轴值与高图中的蜡烛合并

时间:2015-12-16 17:06:15

标签: javascript jquery css css3 highcharts

大家好我试图在y轴和蜡烛之间做一个分隔符但是无法实现它。我已经突出显示了我想用黄色修复的区域。我不确定它是否可能。任何帮助将不胜感激。

这是JsFiddle链接: Demo

这是脚本

$(function () {
    $.getJSON('https://www.highcharts.com/samples/data/jsonp.php?filename=aapl-ohlcv.json&callback=?', function (data) {

        // split the data set into ohlc and volume
        var ohlc = [],
            volume = [],
            dataLength = data.length,
            // set the allowed units for data grouping
            groupingUnits = [[
                'week',                         // unit name
                [1]                             // allowed multiples
            ], [
                'month',
                [1, 2, 3, 4, 6]
            ]],

            i = 0;

        for (i; i < dataLength; i += 1) {
            ohlc.push([
                data[i][0], // the date
                data[i][1], // open
                data[i][2], // high
                data[i][3], // low
                data[i][4] // close
            ]);

            volume.push([
                data[i][0], // the date
                data[i][5] // the volume
            ]);
        }


        // create the chart
        $('#container').highcharts('StockChart', {

            rangeSelector: {
                selected: 1
            },

            title: {
                text: 'AAPL Historical'
            },

            yAxis: [{
                labels: {
                    align: 'right',
                    x: -3
                },
                title: {
                    text: 'OHLC'
                },
                height: '60%',
                lineWidth: 2
            }, {
                labels: {
                    align: 'right',
                    x: -3
                },
                title: {
                    text: 'Volume'
                },
                top: '65%',
                height: '35%',
                offset: 0,
                lineWidth: 2
            }],

            series: [{
                type: 'candlestick',
                name: 'AAPL',
                data: ohlc,
                dataGrouping: {
                    units: groupingUnits
                }
            }, {
                type: 'column',
                name: 'Volume',
                data: volume,
                yAxis: 1,
                dataGrouping: {
                    units: groupingUnits
                }
            }]
        });
    });
});

Chart Image

2 个答案:

答案 0 :(得分:2)

您可以使用yAxis.offset执行此操作。使用此参数,您可以将轴进一步/靠近绘图区域。例如:

  yAxis: [{
    labels: {
      align: 'right',
      x: -3
    },
    title: {
      text: 'OHLC'
    },
    height: '60%',
    lineWidth: 2,
    offset: 20 //new value
  }, {
    labels: {
      align: 'right',
      x: -3
    },
    title: {
      text: 'Volume'
    },
    top: '65%',
    height: '35%',
    offset: 0,
    lineWidth: 2
  }],

您还可以使用yAxis.labels展示位置和yAxis.title展示位置进行游戏。

你必须玩它来找到你的完美契合,但这应该让你开始。

答案 1 :(得分:1)

您已将标签设置为x:-3,因此这些标签在图表中合并。相反将它们定位为

<input type="text" id="price" onchange="formatPrice(this)" />

请参阅Updated fiddle here