Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Highcharts 在海图中对面积点进行四舍五入_Highcharts - Fatal编程技术网

Highcharts 在海图中对面积点进行四舍五入

Highcharts 在海图中对面积点进行四舍五入,highcharts,Highcharts,在极坐标图中使用面积点时,是否有一种方法可以将其四舍五入并使其不那么尖锐 我尝试过“面积样条线”,但对于极坐标图,它并不完全正确,正如您在这里看到的: 编辑 只需将区域更改为区域样条线就可以做你想做的事我想是的只需将区域更改为区域样条线就可以做你想做的事我想是的你可以覆盖highchartshighcharts.seriesTypes.areaspline.prototype.getPointSpline,方法相同,但使用更改了平滑参数。(默认值为1.5) 实例: 您可以使用相同的方法覆盖hi

在极坐标图中使用面积点时,是否有一种方法可以将其四舍五入并使其不那么尖锐

我尝试过“面积样条线”,但对于极坐标图,它并不完全正确,正如您在这里看到的:

编辑


只需将区域更改为区域样条线就可以做你想做的事我想是的只需将区域更改为区域样条线就可以做你想做的事我想是的

你可以覆盖highcharts
highcharts.seriesTypes.areaspline.prototype.getPointSpline
,方法相同,但使用更改了平滑参数。(默认值为1.5)

实例:

您可以使用相同的方法覆盖highcharts
highcharts.SeriestTypes.areaSpline.prototype.getPointSpline
,但平滑参数已更改。(默认值为1.5)

实例:

如果这就是您的数据的样子,按原样显示会比添加人工的“漂亮”平滑度更好吗?也许您可以增加样本粒度(而不是每45度采集一次数据,而是每5度采集一次)?如果在图表中添加视觉上令人愉悦的元素会使数据的显示变得模糊,那么将其添加到图表中并不一定是一个好主意。如果数据是这样显示的,按原样显示会比添加人工的“漂亮”平滑度更好吗?也许您可以增加样本粒度(而不是每45度采集一次数据,而是每5度采集一次)?在图表中添加视觉上令人愉悦的元素并不一定是一个好主意,如果它掩盖了数据显示的内容。花键太圆了。完美的场景介于两者之间。我根据需要进行了编辑。花键太圆了。完美的场景介于两者之间。对蓝色区域效果很好,但当我在黑色区域测试时,它变得很奇怪,我在上面的示例中犯了一个小错误,我覆盖了样条线而不是面积样条线的方法。我现在修正了我的答案。现在看起来像正常的样条曲线。我使用您的新示例,将areasplinerange.prototype更改为areaspline.prototype,并将平滑更改为3。同样的问题也出现在蓝色区域,但当我在黑色区域测试时,它变得很奇怪,我在上面的例子中犯了一个小错误,我已经覆盖了样条线而不是面积样条线的方法。我现在修正了我的答案。现在看起来像正常的样条曲线。我使用您的新示例,将areasplinerange.prototype更改为areaspline.prototype,并将平滑更改为3。同样的问题也会出现
Highcharts.chart('container', {

    chart: {
        polar: true
    },

    title: {
        text: 'Highcharts Polar Chart'
    },

    pane: {
        startAngle: 0,
        endAngle: 360
    },

    xAxis: {
        tickInterval: 45,
        min: 0,
        max: 360,
        labels: {
            formatter: function () {
                return this.value + '°';
            }
        }
    },

    yAxis: {
        min: 0
    },

    plotOptions: {
        series: {
            pointStart: 0,
            pointInterval: 45
        }
    },

    series: [{
        type: 'areaspline',
        name: 'Area spline',
        data: [1, 2, 3, 4, 5, 6, 7, 8]
    }, {
        type: 'area',
        name: 'Area',
        data: [1, 8, 2, 7, 3, 6, 4, 5]
    }]
});
...
var smoothing = 3, // 1 means control points midway between points, 2 means 1/3 from the point, 3 is 1/4 etc
...