北京人口分布24小时潮汐

描述:当前是关于Echarts图表中的 3D柱图 示例。
 
            var uploadedDataURL = "/asset/get/s/data-1546499666218-RE8mF8aP8.json";

var MapboxStyleDataURL = "/asset/get/s/data-1546500855305-wBxWgJRZc.json";


myChart.showLoading();

var option = {
    baseOption: {
        timeline: {
            axisType: 'category',
            orient: 'vertical',
            autoPlay: true,
            inverse: true,
            playInterval: 300,
            left: null,
            right: 0,
            top: null,
            bottom: 50,
            width: 55,
            height: null,
            label: {
                normal: {
                    textStyle: {
                        color: '#fff'
                    }
                },
                emphasis: {
                    textStyle: {
                        color: '#aaa'
                    }
                }
            },
            symbol: 'circle',
            lineStyle: {
                color: '#555'
            },
            checkpointStyle: {
                color: '#bbb',
                borderColor: '#777',
                borderWidth: 2
            },
            controlStyle: {
                normal: {
                    color: '#666',
                    borderColor: '#666'
                },
                emphasis: {
                    color: '#aaa',
                    borderColor: '#aaa'
                }
            },
            data: []
        },
        title: {
            text: "北京人口分布24小时潮汐",
            textStyle: {
                color: '#fff',
                fontSize: 30
            },
            right: '5%'
        },

        visualMap: {
            show: false,
            calculable: true,
            realtime: false,
            inRange: {
                color: ['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf', '#fee090', '#fdae61', '#f46d43', '#d73027', '#a50026']
            },
            outOfRange: {
                colorAlpha: 0
            }

        },

        maptalks3D: {
            center: [116.368655, 39.917726],
            zoom: 9,
            pitch: 40,
            urlTemplate: 'http://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}',
            // altitudeScale: 1,
            postEffect: {
                enable: true,
                FXAA: {
                    enable: true
                }
            },
            light: {
                main: {
                    intensity: 1,
                    shadow: true,
                    shadowQuality: 'high'
                },
                ambient: {
                    intensity: 0.
                },
                ambientCubemap: {
                    texture: '/asset/get/s/data-1491838644249-ry33I7YTe.hdr',
                    exposure: 1,
                    diffuseIntensity: 0.5,
                    specularIntensity: 2
                }
            }
        },
        series: [{
            type: 'bar3D',
            shading: 'realistic',
            coordinateSystem: 'maptalks3D',
            silent: true,
            barSize: 1.5,
            silent: true
        }]
    },
    options: [] //timeline所用的多个option存放处,读取数据后添加
}

$.getJSON(uploadedDataURL, function(linedata) { //读取24小时数据
    myChart.hideLoading();
    var timeline = [];
    for (var n = 0; n < linedata.features.length; n++) { //对数据中每天数据整理后添加到options中,以便timeline使用
        timedata = linedata.features[n].gridChart_list;
        var data = []
        var max = linedata.features[n].max;
        for (var i = 0; i < timedata.length; i += 1) {
            var _pheight = 1000;
            loncol = timedata[i].lon //经度
            latcol = timedata[i].lat //纬度
            var _v = JSON.parse(timedata[i].values);
            var value;
            var value = _v[0] + _v[1] + _v[2]; //数组中值相加
            count = value / 2;
            data.push({
                'value': [loncol, latcol, count]
            })

        }
        timeline.push(linedata.features[n].time); //时间(0时到24时)

        option.options.push({

            visualMap: {
                max: max / 2
            },
            series: [{
                data: data
            }]
        });
    }
    option.baseOption.timeline.data = timeline; //时间轴

    if (option && typeof option === "object") {
        myChart.setOption(option, true);
    }
});