2

我需要使用 HighCharts 绘制雷达图;特别是,所有系列都有不同的规模。我能够使用多个比例尺(每个 y 轴一个)正确绘制雷达图,但我在主 y 轴上看到多个重叠标签,这显然是错误的。现在,我想在相应的 y 轴上绘制与每个 y 轴相关的标签。我怎样才能做到这一点 ?

这是一个可以粘贴到 jsFiddle 中的片段,以验证标签是否确实重叠。

$(function () {
window.chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container',
        polar: true,
        type: 'line',
        zoomType: 'xy'
    },
    title: {
        text: 'Indicators Radar Chart',
        x: -80
    },
    pane: {
        size: '90%'
    },
    xAxis: {
        categories: ['A', 'B', 'C', 'D'],
        tickmarkPlacement: 'on',
        lineWidth: 0,
        min: 0
    },
    yAxis: [{
        gridLineInterpolation: 'polygon',
        lineWidth: 0,
        min: 0,
        labels: {
            enabled: true
        }
    }, {
        gridLineInterpolation: 'polygon',
        lineWidth: 0,
        min: 0,
        labels: {
            enabled: true
        }
    }, {
        gridLineInterpolation: 'polygon',
        lineWidth: 0,
        min: 0,
        labels: {
            enabled: true
        }
    }],
    tooltip: {
        shared: true,
        valuePrefix: ''
    },
    legend: {
        align: 'right',
        verticalAlign: 'top',
        y: 100,
        layout: 'vertical'
    },
    series: [{
        name: 'Austria',
        yAxis: 0,
        data: [0.130435, 35.043480, 29288.695312, 236960.296875],
        pointPlacement: 'on'
    }, {
        name: 'Germany',
        yAxis: 1,
        data: [0.000000, 42.217392, 149103.906250, 589782.500000],
        pointPlacement: 'on'
    }, {
        name: 'Italy',
        yAxis: 2,
        data: [2.304348, 44.826088, 132805.218750, 878785.937500],
        pointPlacement: 'on'
    }]
});

});

我试图获得的输出是,对于这个特定的图表,与不同比例相关的标签出现在每个轴上:从中心点到 A,从中心点到 B,从中心点到 C 和从中心点到 D。问题是现在所有标签都出现在同一轴上,从中心点到 A。

先感谢您。

4

1 回答 1

0

演示:http ://www.highcharts.com/jsbin/eyugex/edit

您似乎假设每个轴都从中心延伸到不同的方向,但事实并非如此。所有 Y 轴都从中心延伸。X 轴从图表的顶部开始,顺时针绕着周边沿着周边,并在顶部结束。Y 轴标签绘制在 X 轴开始的位置,即向上。

在这样的图表中,添加多个 Y 轴是没有意义的,因为它们都绘制在彼此之上,您无法从视觉上区分它们。

于 2013-01-31T17:03:17.283 回答