e chart s是基于什么实现的

e chart s是基于什么实现的,第1张

ECharts是百度推出的基于JavaScript实现的开源可视化库,可以说涵盖量非常广,基本上我们需要用到的图表,它都能提供,现在更新到30版本,我看了下官网给出的例子,可以帮我们实现很多酷炫的图表要求,大家可自行欣赏一下:EChartsDemo。

对于图表这块的开发,使用一些流行的图表库可以大大提高我们的开发效率,目前较为流行的图表库大概有Echarts,Hcharts,AntV,他们都是大同小异,我印象比较深刻的是Hcharts是支持多坐标轴的,Echarts好像是不支持的,但是对于小程序的选择我们选择的是阿里的AntV-f2,因为他明确指出了适合小程序开发,而且AntV-f2除了不支持一些document,其他的大部分功能都是支持的,我们就没有再考虑其他的库,但是官方并没有太多关于小程序的具体使用文档,我们只能根据js的相关事例翻译成小程序的语法。

钉钉小程序开发工具: >

首先附上实现效果,被分了段的柱状图

幸亏了公司的设计师出的难题,不然我也不会去捣鼓这个东西的

这个图表的类型是 pictoriaBar ,在echarts 34版本(版本记得不太明确)之后有了这个类型的图

介绍下这个属性的具体用处:

barWidth: 设置柱子的宽度

symbol:设置小块的样式

symbolRepeat: 设置柱子上的小块是否重复,我尝试过发现,默认为false,只显示一个小块

symbolOffset: 设置每个柱子的位置(每个柱子的位置需要进行计算得出)

symbolSize: 设置每个小块的大小

constchartInit = {color: ["#7AC9D2","#00C1DE","#00749F","#77BEE8","#1890FF","#3436C7","#0103A0","#000272"],backgroundColor:"transparent",grid: {left:"10px",top:"50px",right:"50px",bottom:"16px",containLabel:true},xAxis: {type:"category",data: ["2018/08/15","2018/10/02","2018/01/19","2018/05/23","2018/09/28","2018/02/21","2018/11/11","2018/06/14"],axisLabel: {color:"#AFBCC4"},axisTick: {show:false},axisLine: {show:false}  },yAxis: {name:"单位",axisLine: {show:false},type:"value",nameGap:10,axisTick: {show:false},axisLabel: {color:"#747677"},splitLine: {lineStyle: {color:"rgba(216,216,216,010)",type:"solid"}    }  },legend: {top:20,data: [      {name:"东向西直行",icon:"square"},      {name:"东向西右转",icon:"square"},      {name:"西向东直行",icon:"square"},      {name:"西向东左转",icon:"square"},      {name:"南向北直行",icon:"square"},      {name:"南向北左转",icon:"square"},      {name:"北向南直行",icon:"square"},      {name:"北向南左转",icon:"square"}    ]  },series: [    {name:"东向西直行",type:"pictorialBar",symbol:"roundRect",symbolRepeat:true,// 分节barWidth:10,symbolSize: [10,5],//size,单个symbol的大小data: [120,132,101,134,90,230,210,180]    },    {name:"东向西右转",type:"pictorialBar",barWidth:10,symbolRepeat:true,symbol:"roundRect",symbolOffset: [13,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小data: [220,182,191,234,290,330,310,290]    },    {name:"西向东直行",type:"pictorialBar",symbolRepeat:true,symbol:"roundRect",symbolOffset: [26,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小barWidth:10,data: [150,232,201,154,190,330,410,430]    },    {name:"西向东左转",type:"pictorialBar",symbolRepeat:true,symbol:"roundRect",symbolOffset: [39,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小barWidth:10,data: [320,332,301,334,390,330,320,503]    },    {name:"南向北直行",type:"pictorialBar",barWidth:10,symbol:"roundRect",symbolRepeat:true,symbolOffset: [52,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小data: [820,932,901,934,1290,1330,1320,1222]    },    {name:"南向北左转",type:"pictorialBar",barWidth:10,symbol:"roundRect",symbolRepeat:true,symbolOffset: [65,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小data: [820,932,901,934,1290,1330,1320,1290]    },    {name:"北向南直行",type:"pictorialBar",barWidth:10,symbol:"roundRect",symbolRepeat:true,symbolOffset: [78,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小data: [120,132,101,134,90,230,210,180]    },    {name:"北向南左转",type:"pictorialBar",barWidth:10,symbol:"roundRect",symbolRepeat:true,symbolOffset: [91,0],// 柱子的位置symbolSize: [10,5],//size,单个symbol的大小data: [120,132,101,134,90,230,210,180]    }  ]};

说一些我常用到的大数据分析工具

1专业的大数据分析工具

2各种Python数据可视化第三方库

3其它语言的数据可视化框架

一、专业的大数据分析工具

1、FineReport

FineReport是一款纯Java编写的、集数据展示(报表)和数据录入(表单)功能于一身的企业级web报表工具,只需要简单的拖拽 *** 作便可以设计复杂的中国式报表,搭建数据决策分析系统。

2、FineBI

FineBI是新一代自助大数据分析的商业智能产品,提供了从数据准备、自助数据处理、数据分析与挖掘、数据可视化于一体的完整解决方案,也是我比较推崇的可视化工具之一。

FineBI的使用感同Tableau类似,都主张可视化的探索性分析,有点像加强版的数据透视表。上手简单,可视化库丰富。可以充当数据报表的门户,也可以充当各业务分析的平台。

二、Python的数据可视化第三方库

Python正慢慢地成为数据分析、数据挖掘领域的主流语言之一。在Python的生态里,很多开发者们提供了非常丰富的、用于各种场景的数据可视化第三方库。这些第三方库可以让我们结合Python语言绘制出漂亮的图表。

1、pyecharts

Echarts(下面会提到)是一个开源免费的javascript数据可视化库,它让我们可以轻松地绘制专业的商业数据图表。当Python遇上了Echarts,pyecharts便诞生了,它是由等一群开发者维护的EchartsPython接口,让我们可以通过Python语言绘制出各种Echarts图表。

2、Bokeh

Bokeh是一款基于Python的交互式数据可视化工具,它提供了优雅简洁的方法来绘制各种各样的图形,可以高性能的可视化大型数据集以及流数据,帮助我们制作交互式图表、可视化仪表板等。

三、其他数据可视化工具

1、Echarts

前面说过了,Echarts是一个开源免费的javascript数据可视化库,它让我们可以轻松地绘制专业的商业数据图表。

大家都知道去年春节以及近期央视大规划报道的百度大数据产品,如百度迁徙、百度司南、百度大数据预测等等,这些产品的数据可视化均是通过ECharts来实现的。

2、D3

D3(DataDrivenDocuments)是支持SVG渲染的另一种JavaScript库。但是D3能够提供大量线性图和条形图之外的复杂图表样式,例如Voronoi图、树形图、圆形集群和单词云等。

本文同步发表于个人的 CSDN博客

echarts5 以上的版本,echarts容器支持直接设定百分比宽高,但是仍然会有低版本的一个问题,就是浏览器尺寸变动的时候,echarts容器不会响应式的变化。

为了解决这个问题,有了如下解决方案:

其中父元素一定要使用行内样式的方式设定宽高。

在处理echarts图表的时候,往往需要使用 windowonresize 来监听页面大小,从而进一步去改变echarts的大小,但是 resize 事件触发的频率极其频繁,如果页面的echarts图表又很多,这无疑是一件十分灾难的事情。

首先定义一个节流函数,需要接收一个函数,并且返回一个函数,示例如下:

原理很简单,就是使用 setTimeout 延迟执行,如果尚未执行完毕,则直接返回。

应用如下:

效果还是很明显的:

以上就是关于e chart s是基于什么实现的全部的内容,包括:e chart s是基于什么实现的、钉钉小程序图表库AntV - F2 使用总结、echarts 自定义图表等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9580665.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存