three.js 添加 echarts图表

function initChart(){
// // 基于准备好的dom,初始化echarts实例
var myChart = echarts.init( $("<canvas width='512' height='512'></canvas>")[0] );
// 绘制图表
myChart.setOption({
    title: {
        text: 'ECharts 入门示例'
    },
    tooltip: {},
    xAxis: {
        data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
    },
    yAxis: {},
    series: [{
        name: '销量',
        type: 'bar',
        data: [5, 20, 36, 10, 10, 20]
    }]
});

myChart.on('finished', function () {
    var spriteMap = new THREE.TextureLoader().load( myChart.getDataURL() );
    
    var spriteMaterial = new THREE.SpriteMaterial({
      transparent: true,
      map: spriteMap,
      side: THREE.DoubleSide
    });

    var sprite = new THREE.Sprite( spriteMaterial );
    sprite.scale.set(10, 10, 1);//调整缩放
    sprite.position.set(0, 10, 0);
    scene.add(sprite);

  });
}

setTimeout(initChart,1000);

什么是精灵(Sprite)

按照Three.js官网的解释是:精灵是一个总是面朝着摄像机的平面,通常含有使用一个半透明的纹理。精灵不会投射任何阴影,即使设置了也将不会有任何效果。

posted @ 2024-02-21 09:47  暖暖De幸福  阅读(349)  评论(0编辑  收藏  举报