scotter

描述:当前是关于Echarts图表中的 散点图 示例。
 
            var data = [
    [10.0, 8.04],
    [8.0, 6.95],
    [13.0, 7.58],
    [9.0, 8.81],
    [11.0, 8.33],
    [14.0, 9.96],
    [6.0, 7.24],
    [4.0, 4.26],
    [12.0, 10.84],
    [7.0, 4.82],
    [4.0, 9.0],
    [5.0, 5.68]
]
var ndata = []
for (var iten of data) {
    ndata.push({
        name: data.indexOf(iten) + 'rode',
        '客流量': iten[0],
        '销售量': iten[1]
    })
}
var keys = Object.keys(ndata[0])
keys=keys.slice(keys.indexOf('name')+1,keys.length)
option = {
    legend:{
        show:true
    },
    tooltip: {
        tigger: "axis",
        show: 'show',
        formatter: function(params) {
            var name = params.name,
                div = '<div><div class="paramName">' + params.name + '</div>'
            for (var item of ndata) {
                if (item.name == name) {
                    for (var ite of keys) {
                        div += '<div><span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:' + params.color + ';"></span>' + ite + ' : ' + item[ite] + '</div>'
                    }
                    break
                }
            }
            div += '</div>'
            return div
        }
    },
    xAxis: {
        type: 'value',
        splitLine: {
            show: false
        },
        axisTick: {
            show: false
        },
        axisLabel: {
            show: false
        },
        axisLine: {
            symbol: ['none', 'arrow'],
            symbolSize: [10, 12],
            lineStyle: {
                color: "#d9d9d9"
            }
        }
    },
    yAxis: {
        type: 'value',
        splitLine: {
            show: false
        },
        axisTick: {
            show: false
        },
        axisLabel: {
            show: false
        },
        axisLine: {
            symbol: ['none', 'arrow'],
            symbolSize: [10, 12],
            lineStyle: {
                color: "#d9d9d9"
            }
        }
    },
    series: setSeries(ndata, [8])
};
function setSeries(data, splitPoint) {
    var splitP1 = splitPoint[0] || 0;
    var ser=['潜力店','旗舰店','提升店','流量店']
    var nData = [],
        series = [],
        d1 = [],
        d2 = [],
        d3 = [],
        d4 = []
    for (var item of data) {
        var x1 = item[keys[0]],
            y1 = item[keys[1]]
        var idat = {
            name: item.name,
            value: [x1 - splitP1, y1 - (splitPoint[1] || splitP1)],
        }
        console.log(idat)
        if (idat.value[0] <= 0 && idat.value[1] > 0) {
            d1.push(idat)
        }
        if (idat.value[0] > 0 && idat.value[1] >= 0) {
            d2.push(idat)
        }
        if (idat.value[0] <= 0 && idat.value[1] <= 0) {
            d3.push(idat)
        }
        if (idat.value[0] > 0 && idat.value[1] <= 0) {
            d4.push(idat)
        }
    }
    nData.push(d1), nData.push(d2), nData.push(d3), nData.push(d4);
    nData.forEach(function(item, index) {
        series.push({
            name: ser[index],
            type: "scatter",
            data: item,
            label: {
                show: true,
                formatter: '{b}',
                color: "#7b8391",
                position: [20, -10],
            }
        })
    })
    return series
}