第一种:
使用dataset:{
{ source: },
{ transform: { type:’ ’ , config: { } } }
},
series:{
{ datasetIndex:1 }
}
echarts.registerTransform(ecStat.transform.regression);
var data = [
[96.24, 11.35],
[33.09, 85.11],
[57.60, 36.61],
[36.77, 27.26],
[20.10, 6.72],
[45.53, 36.37],
[110.07, 80.13],
[72.05, 20.88],
];
option = {
dataset: [
{source: data},
{transform: //transform必须写,如果不写回归曲线就没了
{
type: 'ecStat:regression',
config: { method: 'polynomial', order: 3 } //可改为某种类型,如线性回归(linear),多项式回归(polynomial),指数回归(exponential),对数回归(logarithmic)
}
}
],
xAxis: {
type:'value' //一定不能在X轴加类型type:'category',type必须是'value'类型
},
yAxis: {
type:'value' //也不能在Y轴加类型type:'category',如果写type必须写'value'类型
},
series: [
{
name: 'scatter',
type: 'scatter'
},
{
name: 'line',
type: 'line',
//smooth: true, //是否开启平滑处理,可以为boolean类型或number类型(0到1),如果线性回归,此属性对回归线没有影响
datasetIndex: 1, //如果series.data没有指定,并且dataset存在,那么就会使用dataset。datasetIndex指定本系列使用哪个dataset。
// symbolSize: 0.1, //显示回归曲线上与原始数据的X坐标对应的回归曲线上的点
}
]
};
第二种:
使用myRegression = ecStat.regression( )
series:{
{data:myRegression.points}
}
var data= new Array()
data中存入二维数组,一维数组是表示(x, y)的点
var myRegression = ecStat.regression('polynomial', data, 1)
this.charts初始化init()
this.charts.setOption({
xAxis:{
type: 'value' //在回归中可以不写X轴、Y轴的类型,对回归线没有影响
},
yAxis:{
type: 'value'
},
series:{
{
type: 'scatter',
data: data,
},
{
type: 'line',
data: myRegression.points
smooth: true, //是否开启平滑处理,对线性回归没有影响
symbol: 'triangle', //标记的图形,'circle','rect','roundRect','diamond','pin','arrow','none'
symbolSize: 10, //标记的大小
}
}
})