echarts使用(2) 散点图

这里展示的是在vue框架中,使用echarts去实现多图例的散点图。

假如有数据:
x=[1,2,3,4,5,6]
y=[1,2,3,4,5,6]
z=[1,2,3,4,5,6]
a=[1,2,3,4,5,6]
且data=[x,y,z,a],我们需要表示出x,y,z,a两两之间的关系。则代码如下:

//处理x,y,z,a数据,生成对应的二维数组
let _len=data[0].length;
let x_y=[];
let x_z=[];
let x_a=[];
let y_x=[];
let y_z=[];
let y_a=[];
let z_x=[];
let z_y=[];
let z_a=[];
let a_x=[];
let a_y=[];
let a_z=[];
for(let i=0;i<_len;i++){
    x_y.push([data[0][i],data[1][i]]);
    x_z.push([data[0][i],data[2][i]]);
    x_a.push([data[0][i],data[3][i]]);
    y_x.push([data[1][i],data[0][i]]);
    y_z.push([data[1][i],data[2][i]]);
    y_a.push([data[1][i],data[3][i]]);
    z_x.push([data[2][i],data[0][i]]);
    z_y.push([data[2][i],data[1][i]]);
    z_a.push([data[2][i],data[3][i]]);
    a_x.push([data[3][i],data[0][i]]);
    a_y.push([data[3][i],data[1][i]]);
    a_z.push([data[3][i],data[2][i]]);
}
      
var chartDom = document.getElementById('echarts_xyza');
var myChart = echarts.init(chartDom);
var option;

option = {
    legend: {
        left:0,
        data: ['x-y', 'x-z','x-a','y-x','y-z','y-a','z-x','z-y','z-a','a-x','a-y','a-z'],
        selected:{
            'x-z':false,
            'x-a':false,
            'y-x':false,
            'y-z':false,
            'y-a':false,
            'z-x':false,
            'z-y':false,
            'z-a':false,
            'a-x':false,
            'a-y':false,
            'a-z':false
        }
    },
    xAxis: {},
    yAxis: {},
    series: [{
        name:"x-y",
        symbolSize: 2,
        data: x_y,
        type: 'scatter'
    },{
        name:"x-z",
        symbolSize: 2,
        data: x_z,
        type: 'scatter'
    },{
        name:"x-a",
        symbolSize: 2,
        data: x_a,
        type: 'scatter'
    },{
        name:"y-x",
        symbolSize: 2,
        data: y_x,
        type: 'scatter'
    },{
        name:"y-z",
        symbolSize: 2,
        data: y_z,
        type: 'scatter'
    },{
        name:"y-a",
        symbolSize: 2,
        data: y_a,
        type: 'scatter'
    },{
        name:"z-x",
        symbolSize: 2,
        data: z_x,
        type: 'scatter'
    },{
        name:"z-y",
        symbolSize: 2,
        data: z_y,
        type: 'scatter'
    },{
        name:"z-a",
        symbolSize: 2,
        data: z_a,
        type: 'scatter'
    },{
        name:"a-x",
        symbolSize: 2,
        data: a_x,
        type: 'scatter'
    },{
        name:"a-y",
        symbolSize: 2,
        data: a_y,
        type: 'scatter'
    },{
        name:"a-z",
        symbolSize: 2,
        data: a_z,
        type: 'scatter'
    }]
};

option && myChart.setOption(option);

如上所示代码,我们可以得到下面的图像:

​​​​​​​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值