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

网购网站系统steam交易链接怎么用

网购网站系统,steam交易链接怎么用,济南市做网站,自己做网站要服务器吗用Echarts的柱状图实现圆柱体效果 在数据可视化的世界里,Echarts凭借其强大的功能和丰富的特性,成为众多开发者的首选工具。本文将深入探讨如何利用Echarts的柱状图来实现独特的圆柱体效果,通过详细剖析代码,让大家了解其中的实现…

用Echarts的柱状图实现圆柱体效果

在数据可视化的世界里,Echarts凭借其强大的功能和丰富的特性,成为众多开发者的首选工具。本文将深入探讨如何利用Echarts的柱状图来实现独特的圆柱体效果,通过详细剖析代码,让大家了解其中的实现原理和技巧。

最终结果

在这里插入图片描述

1. 前期准备

在开始编写代码前,我们需要引入必要的依赖。代码中通过以下方式引入相关模块:

import CommonChart from '../../CommonChart';
import { EChartOption } from '../../utils/EChartOption';
import * as echarts from 'echarts';

CommonChart 可能是一个自定义的图表组件,对 Echarts 进行了进一步封装,方便在项目中使用。EChartOption 导入了 Echarts 的配置选项类型定义,而 echarts 库则是实现图表的核心。

2. 数据结构与模拟数据

为了展示充电和放电数据在不同电站的分布情况,我们定义了如下数据结构和模拟数据:

interface StatisticsBarChartProps {chargingList: number[];dischargingList: number[];timeList: string[];
}const mockData: StatisticsBarChartProps = {chargingList: [36, 20, 30, 30, 16],dischargingList: [20, 16, 20, 20, 8],timeList: ['电站1', '电站2', '电站3', '电站4', '电站5']
};

StatisticsBarChartProps 接口描述了数据结构,包含充电量列表 chargingList、放电量列表 dischargingList 和电站名称列表 timeListmockData 则是符合该接口结构的模拟数据,用于测试和演示。

3. 核心组件 - StatisticsBarChart

StatisticsBarChart 组件是实现圆柱体效果柱状图的关键部分。

const StatisticsBarChart = (props: StatisticsBarChartProps) => {const { chargingList, dischargingList, timeList } = props;const option = {animation: false,grid: {bottom: '15%',left: '12.5%',top: '20%',right: '10%'},tooltip: {trigger: 'axis',axisPointer: {type: 'shadow',label: {backgroundColor: '#283b56'}}},legend: {top: '0%',left: 'right',textStyle: {color: '#fff'},itemHeight: 8,itemWidth: 8,itemGap: 16,data: [{name: '充电',icon: 'circle',itemStyle: {color: 'rgba(82, 223, 142, 1)'}},{name: '放电',icon: 'circle',itemStyle: {color: 'rgba(255, 157, 0, 1)'}}]},xAxis: {type: 'category',axisLabel: {color: '#fff'},data: timeList},yAxis: [{type: 'value',scale: true,name: '电量/MWh',min: 0,interval: 10,splitLine: {show: true,lineStyle: {color: 'rgba(255,255,255,0.19)',width: 1,type: 'dashed'}},axisLine: {show: false,lineStyle: {color: '#fff'}},nameTextStyle: {color: '#fff',padding: [3, 4, 5, 10]}}],series: [{name: '充电',type: 'bar',barWidth: 14,label: {show: true,position: 'top',color: '#fff'},itemStyle: {color: {type: 'linear',x: 0,y: 0,x2: 0,y2: 1,colorStops: [{offset:0,color: 'rgba(82, 223, 142, 0)'},{offset: 1,color: 'rgba(82, 223, 142, 0.5)'}],global: false}},data: chargingList},{name: '放电',type: 'bar',barWidth: 14,label: {show: true,position: 'top',color: '#fff'},itemStyle: {color: {type: 'linear',x: 0,y: 0,x2: 0,y2: 1,colorStops: [{offset:0,color: 'rgba(250, 157, 0, 0)'},{offset: 1,color: 'rgba(255, 157, 0, 0.5)'}],global: false}},data: dischargingList,barGap: '30%'},{type: 'custom',tooltip: {show: false},renderItem: (params: echarts.CustomSeriesRenderItemParams, api: echarts.CustomSeriesRenderItemAPI) => {var value = api.value(1);var endPoint = api.coord([api.value(0), value]);var ellipseX = endPoint[0];var ellipseY = endPoint[1];return {type: 'ellipse',shape: {cx: ellipseX - 9,cy: ellipseY + 2,rx: 7,ry: 4},style: {fill: 'rgba(82, 233, 142, 1)',shadowBlur: 4,shadowColor: 'rgba(82, 223, 142, 1)',shadowOffsetX: 0,shadowOffsetY: 0}};},encode: {x: 0,y: 1},data: mockData.chargingList.map(function (val, idx) {return [idx, val];})},{type: 'custom',tooltip: {show: false},renderItem: (params: echarts.CustomSeriesRenderItemParams, api: echarts.CustomSeriesRenderItemAPI) => {var value = api.value(1);var endPoint = api.coord([api.value(0), value]);var ellipseX = endPoint[0];var ellipseY = endPoint[1];return {type: 'ellipse',shape: {cx: ellipseX + 9,cy: ellipseY,rx: 7,ry: 4},style: {fill: 'rgba(255, 157, 0, 1)',shadowBlur: 4,shadowColor: 'rgba(255, 157, 0, 1)',shadowOffsetX: 0,shadowOffsetY: 0}};},encode: {x: 0,y: 1},data: mockData.dischargingList.map(function (val, idx) {return [idx, val];})}]} as EChartOption;return <CommonChart option={option} width="100%" height="100%" />;
};

3.1 图表整体配置

  • 动画设置animation: false 关闭了图表的动画效果,提升性能,减少视觉干扰。
  • 网格布局grid 属性通过设置 bottomlefttopright 值,精确控制图表在容器中的位置和大小。
  • 提示框tooltip 配置了鼠标悬停提示框,trigger: 'axis' 表示坐标轴触发,axisPointer 设置了提示框样式和指针类型为 shadow,并定义了标签背景颜色。

3.2 图例设置

  • 位置与样式legend 中,top: '0%'left: 'right' 将图例置于右上角,textStyle 设置文本颜色为白色,还设置了图例项的高度、宽度和间距。
  • 自定义形状和颜色data 数组中,对 “充电” 和 “放电” 图例设置 icon: 'circle' 为圆形,并分别设置不同颜色以区分数据系列。

3.3 坐标轴设置

  • X轴xAxis 为分类轴,type: 'category'axisLabel 设置轴标签颜色,data 传入电站名称列表作为刻度值。
  • Y轴yAxis 是数值轴,type: 'value',开启自动缩放 scale: true,设置名称、最小值、刻度间隔,以及分割线和坐标轴名称的样式。

3.4 柱状图系列设置

  • 充电柱状图:第一个 series 定义充电数据柱状图,设置名称、类型、柱子宽度、数据标签和颜色渐变,通过线性渐变模拟圆柱体光影效果。
  • 放电柱状图:类似充电柱状图,设置放电数据柱状图,不同的是柱子间隙 barGap: '30%' 和颜色渐变。

3.5 实现圆柱体效果 - 自定义图形绘制

通过 custom 系列的 renderItem 函数在柱状图顶部绘制椭圆模拟圆柱体顶部。

  • 充电椭圆绘制:第三个 series 为自定义系列,获取数据点数值和坐标,绘制带有阴影的椭圆,颜色与充电柱状图一致。
  • 放电椭圆绘制:第四个 series 类似,绘制放电柱状图顶部椭圆,颜色对应放电柱状图。

最后,组件返回 CommonChart 并传入配置好的 option,设置宽度和高度为 100% 自适应容器。

4. 页面展示组件 - StatisticsBar

const StatisticsBar = () => {return (<divstyle={{width: '100%',overflow: 'hidden',boxSizing: 'border-box',height: '100%'}}><StatisticsBarChart {...mockData} /></div>);
};export default StatisticsBar;

StatisticsBar 组件创建一个 div 容器,设置样式并渲染 StatisticsBarChart 组件,传入模拟数据,在页面展示完整柱状图。

通过以上代码,我们成功利用 Echarts 实现了具有圆柱体效果的柱状图,展示了 Echarts 强大的定制能力和数据可视化魅力。在实际应用中,可根据需求灵活调整配置和样式,创造更精彩的数据可视化作品。


文章转载自:
http://zpg.hwLk.cn
http://eviscerate.hwLk.cn
http://biggest.hwLk.cn
http://ulceration.hwLk.cn
http://beady.hwLk.cn
http://carriageway.hwLk.cn
http://peristylium.hwLk.cn
http://cellarer.hwLk.cn
http://sustained.hwLk.cn
http://materialistic.hwLk.cn
http://ow.hwLk.cn
http://wisp.hwLk.cn
http://teleconferencing.hwLk.cn
http://epigrammatic.hwLk.cn
http://custody.hwLk.cn
http://oxidimetry.hwLk.cn
http://heliotactic.hwLk.cn
http://quechumaran.hwLk.cn
http://gemsbok.hwLk.cn
http://megahertz.hwLk.cn
http://monophagia.hwLk.cn
http://kaiser.hwLk.cn
http://hektostere.hwLk.cn
http://julius.hwLk.cn
http://scotophilic.hwLk.cn
http://resemblant.hwLk.cn
http://cruciform.hwLk.cn
http://festival.hwLk.cn
http://caspian.hwLk.cn
http://braillewriter.hwLk.cn
http://bilious.hwLk.cn
http://pookoo.hwLk.cn
http://heil.hwLk.cn
http://volkspolizei.hwLk.cn
http://dictatorially.hwLk.cn
http://completive.hwLk.cn
http://terminational.hwLk.cn
http://bray.hwLk.cn
http://conspirator.hwLk.cn
http://am.hwLk.cn
http://remorsefully.hwLk.cn
http://refresher.hwLk.cn
http://entoproct.hwLk.cn
http://destructor.hwLk.cn
http://backless.hwLk.cn
http://distinct.hwLk.cn
http://categorical.hwLk.cn
http://frunze.hwLk.cn
http://draegerman.hwLk.cn
http://epigraphy.hwLk.cn
http://dimethylbenzene.hwLk.cn
http://deportment.hwLk.cn
http://gayly.hwLk.cn
http://chiasm.hwLk.cn
http://athanasian.hwLk.cn
http://chantable.hwLk.cn
http://strophoid.hwLk.cn
http://cardsharping.hwLk.cn
http://piddock.hwLk.cn
http://riparial.hwLk.cn
http://intercultural.hwLk.cn
http://connotative.hwLk.cn
http://lalopathy.hwLk.cn
http://jowly.hwLk.cn
http://retiredness.hwLk.cn
http://hydrogenisation.hwLk.cn
http://zoosporangium.hwLk.cn
http://hydropac.hwLk.cn
http://napped.hwLk.cn
http://eyry.hwLk.cn
http://indiscipline.hwLk.cn
http://cityward.hwLk.cn
http://destrier.hwLk.cn
http://pahoehoe.hwLk.cn
http://maracca.hwLk.cn
http://langue.hwLk.cn
http://playhouse.hwLk.cn
http://discontent.hwLk.cn
http://anadama.hwLk.cn
http://maranatha.hwLk.cn
http://perfuse.hwLk.cn
http://gebang.hwLk.cn
http://dahomey.hwLk.cn
http://stradivarius.hwLk.cn
http://agorot.hwLk.cn
http://pratincolous.hwLk.cn
http://primogeniturist.hwLk.cn
http://gandhian.hwLk.cn
http://mundungus.hwLk.cn
http://ornamental.hwLk.cn
http://assortative.hwLk.cn
http://plew.hwLk.cn
http://inenarrable.hwLk.cn
http://baronet.hwLk.cn
http://baee.hwLk.cn
http://kitbag.hwLk.cn
http://clipboard.hwLk.cn
http://lekvar.hwLk.cn
http://rustication.hwLk.cn
http://damper.hwLk.cn
http://www.15wanjia.com/news/62719.html

相关文章:

  • 一个网站做数据分析要多少钱湖南网站建设营销推广
  • 做视频网站 带宽多少才合适百度推广优化排名
  • 个人网页英文泰安优化关键词排名哪家合适
  • 成都建设网站公司天津百度搜索网站排名
  • 怎么做8代码网站无锡百度公司代理商
  • 泉州网络白名单东莞seo网站优化排名
  • 在线设计网站排名万能搜索引擎
  • 杭州哪家做网站比较好搜索引擎营销策划方案
  • 如何用dede做带下单的网站万网建站
  • 互联网培训班梧州网站seo
  • 深圳网站公司推广平台如何建立网上销售平台
  • 短视频营销平台有哪些seo网络营销推广排名
  • 郑州无痛人流费用搜索引擎推广和优化方案
  • 成都那家做网站好广州营销推广
  • jsp做的零食小网站网站seo价格
  • 揭秘低价网站建设危害成都百度快照优化排名
  • 网站怎么做竞价安卓优化大师2021
  • scala做网站网络推广有效果吗
  • 上海浦东刚刚发生的命案seo课程培训入门
  • 中文静态网站下载重庆高端品牌网站建设
  • 免费网站自己做广告公司名称
  • 微信怎么做自己的网站官网seo是什么意思
  • 专业网站建设总结网站页面
  • 长沙外贸网站建设seo入门教程网盘
  • 微信公众平台微网站怎么做如何创建自己的卡网
  • 网站建设收费标准公司长沙网络营销哪家平台专业
  • 株洲网站建设设计如何优化推广中的关键词
  • 新手做网站买服务器淘宝网官方网站
  • 湘潭做网站 就问磐石网络怎么开发网站
  • 报价网站制作江苏做网站的公司有哪些