当前位置: 首页 > news >正文

Echarts3D柱状图-圆柱体-文字在柱体上垂直显示的实现方法

全部代码

<!DOCTYPE html>
<html lang="en" style="height: 100%">
<head><meta charset="utf-8"><title>3D柱状图-圆柱体-文字竖排</title>
</head>
<body style="height: 100%; margin: 0"><div id="main" style="height: 100%"></div><script type="text/javascript" src="https://cdn.staticfile.org/jquery/3.7.1/jquery.min.js"></script><script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts@5.4.1/dist/echarts.min.js"></script><script type="text/javascript">// 当请求回数据后initData(['周一', '周二', '周三', '周四', '周五', '周六'], [100, 50, 70, 80, 60, 40])function initData(xData, yData) {var chartDom = document.getElementById('main');var bar = echarts.init(chartDom);let options = {// 直角坐标系内绘图网格,设置组件距离容器的距离grid: {left: 50,top: 50,right: 50,bottom: 50},// 设置鼠标移入的提示,默认显示tooltip: {},// 设置图例legend: {textStyle: {color: '#999'}},// 设置x轴xAxis: {data: [],// 显示x轴axisLine: {show: true},// 设置x轴的颜色和偏移量axisLabel: {color: '#999',rotate: 0},// 不显示x轴刻度axisTick: {show: false}},// 设置y轴yAxis: {// 显示y轴axisLine: {show: true},// 设置y轴的颜色axisLabel: {color: '#999',},// 不显示y轴刻度axisTick: {show: false},// 不显示分隔线splitLine: {show: false}},// 表示不同系列的列表series: []}// 设置顶部和底部的值let symbolData = [], newShadowHight = [];let heights = 0;yData.forEach(item => {symbolData.push(1)heights += item});newShadowHight = yData.map(item => heights);options.xAxis.data = xData;options.series = [// 底部{z: 2,type: 'pictorialBar',symbol: 'circle',symbolOffset: ['0%', '50%'],symbolSize: [30, 12],toolltip: {show: false},itemStyle: {color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{offset: 0, color: '#1f7eff'}, {offset: 1,color: '#64adff'}])},data: symbolData,},//内容区域{z: 1,type: 'bar',barWidth: 30,label: {normal: {show: true,position: 'inside',verticalAlign: 'middle', // 垂直居中显示// rotate: 90, // 旋转90度,使文字垂直显示//formatter: '{a|{b}}',//{a|{c}万人}formatter: function (params) {console.log(params);let txtArry = params.name.split('');let rs = "";for (var i = 0; i < txtArry.length; i++) {rs += txtArry[i] + "\n";}return rs;},rich: {a: {color: '#fff',fontSize: 14,align: 'center',},}}},data: yData},//内容的顶部{z: 3,type: 'pictorialBar',symbol: 'circle',symbolPosition: 'end',symbolOffset: ['0%', '-50%'],symbolSize: [30, 12],toolltip: {show: false,},itemStyle: {color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{offset: 0, color: '#1f7eff'}, {offset: 1,color: '#64adff',}])},label: {normal: {show: true,position: 'top',formatter: '{a|{c}万人}',//{a|{c}万人}rich: {a: {color: 'inherit',fontSize: 14,align: 'center'},}}},data: yData,},];// 设置配置项bar.setOption(options);window.addEventListener('resize', bar.resize);}</script>
</body>
</html>

效果图

在这里插入图片描述

http://www.lryc.cn/news/580176.html

相关文章:

  • D3 面试题100道之(21-40)
  • 如何查看自己电脑的CUDA版本?
  • 服务器间接口安全问题的全面分析
  • 学习者的Python项目灵感
  • 本地区块链服务在物联网中的应用实例
  • Rust+Blender:打造高性能游戏引擎
  • OneCode图生代码技术深度解析:从可视化设计到注解驱动实现的全链路架构
  • golang 中当 JSON 数据缺少结构体(struct)中定义的某些字段,会有异常吗
  • 【HDMI CEC】 设备 OSD 名称功能详解
  • Rust match 控制流结构
  • 从0开始学习R语言--Day38--辛普森多样性指数
  • 重学前端002 --响应式网页设计 CSS
  • 【网络安全基础】第三章---公钥密码和消息认证
  • <tauri><rust><GUI>使用tauri创建一个文件夹扫描程序
  • 【网络】Linux 内核优化实战 - net.core.flow_limit_table_len
  • C++26 下一代C++标准
  • 深度学习笔记29-RNN实现阿尔茨海默病诊断(Pytorch)
  • 倾斜摄影无人机飞行航线规划流程详解
  • 前端开发-前置知识
  • 2025.7.4总结
  • 物联网数据安全区块链服务
  • DeepSeek-R1知识蒸馏和微调实践(一)源码
  • 使用 C# 发送电子邮件(支持普通文本、HTML 和附件)
  • BEVFormer模型处理流程
  • 佰力博科技与您探讨表面电阻的测试方法及应用领域
  • Java程序员短时间内如何精通Redis?
  • 基于大模型的强直性脊柱炎全周期预测与诊疗方案研究
  • Spring Boot + 本地部署大模型实现:安全性与可靠性保障
  • 基于Linux的Spark本地模式环境搭建实验指南
  • RabbitMQ 4.1.1初体验