不裁剪

描述:当前是关于Echarts图表中的 路径图 示例。
 
             var lineData = []

    function getColor() {
        //定义字符串变量colorValue存放可以构成十六进制颜色值的值
        var colorValue = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f";
        //以","为分隔符,将colorValue字符串分割为字符数组["0","1",...,"f"]
        var colorArray = colorValue.split(",");
        var color = "#";//定义一个存放十六进制颜色值的字符串变量,先将#存放进去
        //使用for循环语句生成剩余的六位十六进制值
        for (var i = 0; i < 6; i++) {
            //colorArray[Math.floor(Math.random()*16)]随机取出
            // 由16个元素组成的colorArray的某一个值,然后将其加在color中,
            //字符串相加后,得出的仍是字符串
            color += colorArray[Math.floor(Math.random() * 16)];
        }
        return color;
    }

for (var i = 0; i < 20; ++i) {
   var x = Math.floor(Math.random()*600+50)
   var y = Math.floor(Math.random()*600+50)
   var xSign = Math.floor(Math.random()*2+1)
   var ySign = Math.floor(Math.random()*2+1)
   //负数
   if (xSign === 1) {
        x *= -1;    
   }
   if (ySign === 1) {
       y *= -1;
   }
  
   var obj = {
        name: "测试直线"+i+1,
        coords: [
            [0, 0],
            [x, y]
        ],
        label: {
            show:false
        },
        lineStyle: {
            normal: {
                color: getColor(),
                width: 1
            }
        }
    }
   lineData.push(obj);
}

option = {
    animation: false,
    title: {
        text: '网络拓扑图'
    },
    xAxis: {
        type:'value',
        min: -1000,
        max: 1000,
        splitLine:{
    lineStyle: {
        width: 1
    }
  }
    },
    yAxis: {
        type:'value',
        min: -1000,
        max: 1000,
        splitLine:{
    lineStyle: {
        width: 1
    }
  }
    },
    dataZoom: [{
            type: 'inside',
            xAxisIndex: 0,
            filterMode: 'filter'
        },
        {
            type: 'inside',
            yAxisIndex: 0,
            filterMode: 'weakFilter'
        }
    ],
    series: [{
        type: 'lines',
        name: '网络拓扑图',
        coordinateSystem: 'cartesian2d',
        lineStyle: {
            normal: {
                color: '#F00',
                width: 1
            }
        },
        label: {
          fontSize: 15  
        },
        symbol: ['none', 'arrow'],
        // 数据
        data: lineData
    }]
};

myChart.on('click',function(params){
    // params  单击拐点的具体数据信息
   console.log('单击项',params);
   if (params.componentType === 'markPoint') {
        // 点击到了 markPoint 上
        console.log('点击到了 markPoint 上');
        if (params.seriesIndex === 5) {
            // 点击到了 index 为 5 的 series 的 markPoint 上。
        }
    }
    else if (params.componentType === 'series') {
        console.log('点击到了 series 上');
        if (params.seriesType === 'graph') {
            if (params.dataType === 'edge') {
                // 点击到了 graph 的 edge(边)上。
            }
            else {
                // 点击到了 graph 的 node(节点)上。
            }
        }
    }
})

myChart.on('mousemove',function(params){
   if (params.componentType === 'markPoint') {
        // 移动到了 markPoint 上
        console.log('移动到了 markPoint 上');
        if (params.seriesIndex === 5) {
            // 移动到了 index 为 5 的 series 的 markPoint 上。
        }
    }
    else if (params.componentType === 'series') {
        console.log('移动到了 series 上');
        if (params.seriesType === 'graph') {
            if (params.dataType === 'edge') {
                // 移动到了 graph 的 edge(边)上。
            }
            else {
                // 移动到了 graph 的 node(节点)上。
            }
        }
    }
})