使用Trae生成3D柱状图效果

266 阅读3分钟

前言

现在,数据越来越多,也越来越复杂,就像一堆乱麻,我们得想办法把里面的关键信息找出来,还得让人一眼就能看明白。

3D 数据可视化就像是给这些乱麻找到了一个好用的展示架,能让复杂的数据变得有条理、有层次,3D 数据可视化就像是把平面的画变成了立体的雕塑,让数据之间的关系更清楚。

比如,我们想看看不同城市的产品销量,3D 柱状图就能把每个城市的销量用柱子表示出来,高的柱子代表销量好,低的柱子代表销量差,而且还能看出它们之间的差距有多大。

生成ECharts 3D柱状图具有深远的意义,本文将会使用Trae AI帮我们实现一个3d版的Echarts柱状图

技术创新层面

传统的2D数据可视化已无法满足多维数据展示的需求,3D柱状图通过引入空间维度,使数据关系呈现出前所未有的深度和广度,看起来比较高大上,让甲方觉得我们很厉害。

我先让Trae搜索全网,要代码简洁,最简单的实现方法

image-20250902190610820

在线的预览效果

最终的效果

image-20250902191142943

image-20250902191149368

Trae的技术实现

  1. 核心库引入 ,使用了最新版本的ECharts核心库和ECharts-GL扩展库,这是构建3d 柱状图的关键代码

    <script src="https://cdn.jsdelivr.net/npm/echarts@5.4.3/
    dist/echarts.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/echarts-gl@2.0.
    9/dist/echarts-gl.min.js"></script>
    
  2. 数据结构设计,采用三维数组结构表示数据点

    // 生成模拟数据
    const data = [];
    for (let i = 0; i < xData.length; i++) {
        for (let j = 0; j < yData.length; j++) {
            // 生成随机值作为柱高
            data.push([i, j, Math.round(Math.random() * 20)])
        }
    }
    
  3. 3D配置核心代码

    // 3D网格配置
    grid3D: {
        boxWidth: 200,
        boxDepth: 80,
        viewControl: {
            // 初始旋转角度
            alpha: 30,
            beta: 30,
            // 自动旋转
            autoRotate: true,
            autoRotateSpeed: 5,
            // 允许缩放
            zoomSensitivity: 1.5
        },
        // 光照配置
        light: {
            main: {
                intensity: 1.2,
                shadow: true
            },
            ambient: {
                intensity: 0.3
            }
        }
    }
    

总结

随着WebGL技术的不断成熟和浏览器性能的提升,基于Web的3D数据可视化将有更广阔的应用前景。

未来可以考虑引入更多交互元素,如点击柱体显示详细信息、添加动画过渡效果、支持数据实时更新等功能,进一步提升用户体验和数据表达能力,这次只是简单的让Trae实现一个Demo,说不定以后的产品需求就有这个,这样才可以做到心里有底,不怕排期。

总之,使用Trae AI生成的ECharts 3D柱状图,不仅是技术实现的展示,更是数据可视化领域的一次创新尝试,为数据分析和决策提供了更加直观、立体的视觉支持。

这次小试牛刀,发现Trae的能力还是很强的,推荐大家都去试试Trae,毕竟现在ai编程很火。