Highcharts区域图表隐藏带有一个数据点的图形

时间:2014-05-29 17:39:19

标签: javascript charts highcharts

我有一个产品,我们的客户可以选择日期范围。对于我们的一个工具,我们将它们作为包含数据高图的面积图。

我注意到当面积图在x轴上有一个数据点时,没有显示图表。这是JSFiddle的一个例子: http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/area-basic/

下面的代码为后代:

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'area'
        },
        title: {
            text: 'US and USSR nuclear stockpiles'
        },
        subtitle: {
            text: 'Source: <a href="http://thebulletin.metapress.com/content/c4120650912x74k7/fulltext.pdf">'+
                'thebulletin.metapress.com</a>'
        },
        xAxis: {
            allowDecimals: false,
            labels: {
                formatter: function() {
                    return this.value; // clean, unformatted number for year
                }
            }
        },
        yAxis: {
            title: {
                text: 'Nuclear weapon states'
            },
            labels: {
                formatter: function() {
                    return this.value / 1000 +'k';
                }
            }
        },
        tooltip: {
            pointFormat: '{series.name} produced <b>{point.y:,.0f}</b><br/>warheads in {point.x}'
        },
        plotOptions: {
            area: {
                pointStart: 1940,
                marker: {
                    enabled: false,
                    symbol: 'circle',
                    radius: 2,
                    states: {
                        hover: {
                            enabled: true
                        }
                    }
                }
            }
        },
        series: [{
            name: 'USA',
            data: [10104 ]
        }, {
            name: 'USSR/Russia',
            data: [16000]
        }]
    });
});

关于此的奇怪部分:图表为空,但当您将鼠标悬停在图表上时,您可以看到数据点。有没有办法让点可见而不会悬停在它们上面?也许是一个给刻度宽度的选项?

谢谢!

1 个答案:

答案 0 :(得分:5)

在你的示例中,当我删除除最后一个数据点之外的所有数据点时,我看到你在说什么。这是因为在此示例中未启用marker。为此,请将其更改为true

    plotOptions: {
        area: {
            pointStart: 1940,
            marker: {
                enabled: true, //this was false.
                symbol: 'circle',
                radius: 2,
                states: {
                    hover: {
                        enabled: true
                    }
                }
            }
        }
    },