Highcharts 如何在海图中通过原点绘制回归线

Highcharts 如何在海图中通过原点绘制回归线,highcharts,regression,Highcharts,Regression,我试着从原点开始回归,x=y=0。这可能吗。有人说这样做不好,但出于某些目的,我需要通过原点划出一条线。我正在使用highcharts。在x=y=0的回归序列中添加一个点,然后将标记设置为disabled以隐藏它,怎么样 let规程=[ { 名称:“足球”, 数据:“足球” } ]; Highcharts.getJSON( "https://raw.githubusercontent.com/mekhatria/demo_highcharts/master/olympic2012.json?c

我试着从原点开始回归,x=y=0。这可能吗。有人说这样做不好,但出于某些目的,我需要通过原点划出一条线。我正在使用highcharts。

在x=y=0的回归序列中添加一个点,然后将标记设置为disabled以隐藏它,怎么样

let规程=[
{
名称:“足球”,
数据:“足球”
}
];
Highcharts.getJSON(
"https://raw.githubusercontent.com/mekhatria/demo_highcharts/master/olympic2012.json?callback=?",
功能(数据){
函数回归(arrWeight,arrHeight){
设r,sy,sx,b,a,meanX,meanY;
r=jStat.corrcoff(棱高、棱重);
sy=jStat.stdev(arrWeight);
sx=jStat.stdev(arrhight);
meanY=jStat(arrWeight).mean();
meanX=jStat(arrHeight).mean();
b=r*(sy/sx);
a=平均值y-平均值x*b;
//排队
设y1,y2,x1,x2;
x1=jStat.min(棱高);
x2=jStat.max(棱高);
y1=a+b*x1;
y2=a+b*x2;
返回{
行:[
//将x=0,y=0添加到回归逻辑中?
{x:0,y:0,标记:{enabled:false},
{x:x1,y:y1,标记:{enabled:true},
{x:x2,y:y2,标记:{enabled:true},
],
R
};
}
常量getData=(名称)=>{
设温度=[],
tempWeight=[],
温度高度=[];
data.forEach((elm)=>{
如果(
elm.constratine==大陆名称&&
榆树重量>0&&
elm.height>0
) {
温度推力([榆树高度,榆树重量]);
临时重量推(榆树重量);
温度高度推(榆树高度);
}
});
设{line,r}=回归(tempWeight,tempHeight);
返回[温度,线路,r];
};
const getDataSport=(sportName)=>{
设温度=[],
tempWeight=[],
温度高度=[];
data.forEach((elm)=>{
如果(elm.sport==sportName&&elm.weight>0&&elm.height>0){
温度推力([榆树高度,榆树重量]);
临时重量推(榆树重量);
温度高度推(榆树高度);
}
});
设{line,r}=回归(tempWeight,tempHeight);
返回[温度,线路,r];
};
设级数=[],
可见=假,
指数=0,
激活=[“足球”];
纪律。forEach((e)=>{
if(激活索引of(e.name)>-1){
可见=真实;
}否则{
可见=假;
}
let[scatterData,line,r]=getDataSport(e.data);
推(
{
键入:“散布”,
可见的,可见的,
姓名:e.name,
数据:散射数据
},
{
姓名:e.name,
可见的,可见的,
r:r,
数据:行
}
);
});
图表(“容器”{
图表:{
键入:“行”,
zoomType:“y”,
},
标题:{
正文:“2012年奥运会足球运动员体重与身高的关系”
},
xAxis:{
标题:{
正文:“高度”
},
标签:{
格式:“{value}m”
},
},
亚克斯:{
标题:{
正文:“重量”
},
标签:{
格式:“{value}kg”
}
},
图例:{
已启用:true
},
打印选项:{
散布:{
标记:{
半径:2.5,
符号:“圆圈”,
国家:{
悬停:{
启用:对,
线条颜色:“rgb(100100)”
}
}
},
国家:{
悬停:{
标记:{
已启用:false
}
}
}
},
行:{
线宽:2.5
}
},
工具提示:{
格式化程序:函数(){
如果(this.series.data.length>2){
返回(
this.series.name+
“
高度:+ 这个.x+ “m
重量:+ 这个+ “千克” ); }否则{ 返回( this.series.name+ “
r:”+ this.series.userOptions.r.toFixed(2) ); } } }, 系列:系列 }); } );