Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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
Javascript Highchart-Heat map是否支持值之和?_Javascript_Charts_Highcharts - Fatal编程技术网

Javascript Highchart-Heat map是否支持值之和?

Javascript Highchart-Heat map是否支持值之和?,javascript,charts,highcharts,Javascript,Charts,Highcharts,我在找下面这样的东西 有什么方法可以实现这一点吗?一种方法是添加另一个具有行和列的合计值的序列。为避免默认着色和colorAxis交互,可以更改dataLabel格式、工具提示格式和数据点属性的选项 JSFiddle: 另一个解决方案是在相对的边上添加线条轴,并将类别设置为求和值。值不会自动求和-您必须自己设置或通过自定义代码计算值 JSFiddle: 一种方法是添加另一个具有行和列的合计值的序列。为避免默认着色和colorAxis交互,可以更改dataLabel格式、工具提示格式和数据点属性

我在找下面这样的东西


有什么方法可以实现这一点吗?

一种方法是添加另一个具有行和列的合计值的序列。为避免默认着色和
colorAxis
交互,可以更改dataLabel格式、工具提示格式和数据点属性的选项

JSFiddle:

另一个解决方案是在相对的边上添加线条轴,并将类别设置为求和值。值不会自动求和-您必须自己设置或通过自定义代码计算值

JSFiddle:


一种方法是添加另一个具有行和列的合计值的序列。为避免默认着色和
colorAxis
交互,可以更改dataLabel格式、工具提示格式和数据点属性的选项

JSFiddle:

另一个解决方案是在相对的边上添加线条轴,并将类别设置为求和值。值不会自动求和-您必须自己设置或通过自定义代码计算值

JSFiddle:


您可以通过添加额外的轴(正如Kacper提到的)来求和,但要捕获标签格式化程序并提取当前的x/y值。然后在序列上迭代并用相同的坐标求和所有点

xAxis: [{
            categories: ['Alexander', 'Marie', 'Maximilian', 'Sophia', 'Lukas', 'Maria', 'Leon', 'Anna', 'Tim', 'Laura']
        },{
            linkedTo: 0,
            opposite: true,
            tickLength: 0,
            labels: {
                formatter:function() {
                    var chart = this.chart,
                        each = Highcharts.each,
                        series = chart.series[0],
                        sum = 0,
                        x = this.value;

                    each(series.options.data, function(p, i) {
                        if(p[0] === x)
                            sum += p[2]; 
                    });

                    return sum;
                }
            }
        }],

        yAxis: [{
            categories: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'],
            title: null
        },{
            linkedTo: 0,
            opposite: true,
            tickLength: 0,
            labels: {
                formatter:function() {
                    var chart = this.chart,
                        each = Highcharts.each,
                        series = chart.series[0],
                        sum = 0,
                        x = this.value;
                    each(series.options.data, function(p, i) {
                        if(p[1] === x)
                            sum += p[2]; 
                    });

                    return sum;
                }
            },
            title: null
        }],

示例:

您可以通过添加额外的轴(如Kacper所述)来求和,但要捕获标签格式化程序并提取当前的x/y值。然后在序列上迭代并用相同的坐标求和所有点

xAxis: [{
            categories: ['Alexander', 'Marie', 'Maximilian', 'Sophia', 'Lukas', 'Maria', 'Leon', 'Anna', 'Tim', 'Laura']
        },{
            linkedTo: 0,
            opposite: true,
            tickLength: 0,
            labels: {
                formatter:function() {
                    var chart = this.chart,
                        each = Highcharts.each,
                        series = chart.series[0],
                        sum = 0,
                        x = this.value;

                    each(series.options.data, function(p, i) {
                        if(p[0] === x)
                            sum += p[2]; 
                    });

                    return sum;
                }
            }
        }],

        yAxis: [{
            categories: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'],
            title: null
        },{
            linkedTo: 0,
            opposite: true,
            tickLength: 0,
            labels: {
                formatter:function() {
                    var chart = this.chart,
                        each = Highcharts.each,
                        series = chart.series[0],
                        sum = 0,
                        x = this.value;
                    each(series.options.data, function(p, i) {
                        if(p[1] === x)
                            sum += p[2]; 
                    });

                    return sum;
                }
            },
            title: null
        }],

示例:

适应现有功能的好想法来构建答案:)适应现有功能的好想法来构建答案:)您的解决方案有助于从客户端本身构建总和。感谢您的回答。您的解决方案有助于从客户端自身积累金额。谢谢你的回答