6

我在 Highchart 中有一个超过 10 个系列的折线图。当图表在启用系列标记的情况下绘制超过 2 个月的数据时,图表看起来很拥挤并且没有意义,所以我禁用了系列标记。当系列标记被禁用时,图例中的标记也消失了。我想要的是仅在系列中禁用标记并在图例中启用标记。我怎样才能做到这一点?有人可以帮我吗?

谢谢,洛基。

4

2 回答 2

5

你有两个选择:

  • 为整个系列启用标记,但为每个点禁用
  • 使用两个系列,一个用于数据,一个用于图例,并通过 ID 将它们链接在一起

例子:

var chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container'
    },
    plotOptions: {
        series: { 
            marker: {
                enabled: false
            }
        }
    },
    series: [{
        data: [],
        name: 'test',
        id: 'id-1',
        color: 'red',
        marker: {
            enabled: true
        }
    }, {
        linkedTo: 'id-1',
        color: 'red',
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0]        
    }]
});
于 2013-09-19T11:22:52.237 回答
1

你可以做这样的事情

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<body>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <script src="https://code.highcharts.com/stock/highstock.js"></script>
    <script src="https://code.highcharts.com/stock/modules/exporting.js"></script>

    <div id="container" style="height: 400px; min-width: 310px"></div>


</body>
</html>
<script type="text/javascript">
    $(function () {

        Highcharts.Series.prototype.drawPoints = function () { };

        $('#container').highcharts('StockChart', {

            title: {
                text: 'This is yongjing.chen test 3'
            },
            legend: { enabled: true, symbolWidth: 50 },

            plotOptions: {
                series: {
                    marker: {
                        enabled: true, radius: 6, symbol: 'square'
                    }
                }
            },
            series: [{
                data: [1, 171.5, 306.4, 2.2, 300, 2, 200],
                name: 'CPU',
                id: 'id-1',
                color: 'red'
            }]

        });
    });
</script>

于 2016-06-17T03:26:43.333 回答