分享一个开源的javascript统计图表库,40行代码实现专业统计图表(代码片段)

JerryWangSAP JerryWangSAP     2022-11-23     702

关键词:

提升程序员工作效率的工具/技巧推荐系列

这可能是史上最简单易用的开源统计图表绘制库了。柱状图,饼状图,点状图等等您能想到的类型全部支持。

这个开源库的官网:http://www.chartjs.org/

技术分享图片

直接看如何只用40行代码就实现专业的统计图表。代码如下:

技术分享图片

<html>

<canvas id="myChart" width="300px" height="300px"></canvas>

<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.js"></script>

<script>

var ctx = document.getElementById("myChart").getContext(‘2d‘);

var myChart = new Chart(ctx, 

type: ‘line‘,

data: 

labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],

datasets: [

label: ‘# of Votes‘,

data: [12, 14, 3, 5, 2, 3],

backgroundColor: [

‘rgba(255, 99, 132, 0.2)‘, ‘rgba(54, 162, 235, 0.2)‘, ‘rgba(255, 206, 86, 0.2)‘, ‘rgba(75, 192, 192, 0.2)‘,

‘rgba(153, 102, 255, 0.2)‘, ‘rgba(255, 159, 64, 0.2)‘

],

borderColor: [

‘rgba(255,99,132,1)‘, ‘rgba(54, 162, 235, 1)‘, ‘rgba(255, 206, 86, 1)‘, ‘rgba(75, 192, 192, 1)‘,

‘rgba(153, 102, 255, 1)‘, ‘rgba(255, 159, 64, 1)‘

],

borderWidth: 1

]

,

options: 

responsive: false,

scales: 

yAxes: [

ticks: 

beginAtZero:true



]





);

</script>

</html>

效果如下:

技术分享图片

简单解释下代码。

  • 第二行: 这个canvas结点作为最后绘制出的图表显示的一个容器,也就是说,最后画出来的统计图表就显示在这个canvas结点里。大家可以根据需要定义图标的宽(width)和高(height)。
  • 第三行:声明了这个开源库的CDN地址。
  • 第八行:声明要显示的统计图的类型。同一套数据是可以用不同的统计图类型显示出来的,可选的有bar, bubble, doughnut, horizontalBar, line, pie, polarArea, radar, scatter这几种。本文后半部分提供了每一种图的效果。
  • 第十行:labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"]。定义了统计图表的一个维度。如果是线状图,柱状图这些类型,则labels定义的维度作为统计同的横坐标(也就是X坐标)。
  • 第十三行:data: [12, 14, 3, 5, 2, 3] 定义了统计图表的另一个维度。如果是线状图,柱状图这些类型,则labels定义的维度作为统计图的纵坐标(也就是Y坐标)。如果是饼状图,data定义的这些值是描述每个维度占整个饼(一个完整圆)的百分比。
  • 第二十六行:responsive: false,意思是使用第二行canvas指定的宽和高来绘制统计图表。如果response置为true,意思是响应式布局,会以全屏的方式显示图表。

这40行代码就讲解完了,对于应用程序开发人员来说,无需去研究里面的绘图细节,甚至连用户把鼠标放到图标上自动弹出tooltip这些细节都自动由这个库实现了,使用起来非常方便。

下面是把第八行代码图标的类型属性type传入各种支持的类型后的渲染结果,方便大家查阅:

type: line - 线状图

技术分享图片

doughnut - 圈图

技术分享图片

horizontalBar - 水平柱图

技术分享图片

pie - 饼状图

技术分享图片

radar - 雷达图

技术分享图片

polarArea

技术分享图片

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
技术分享图片

技术分享图片


javascript统计图表插件echarts(代码片段)

阅读目录EchartshtmlEcharts用于制作数据统计图表,一个纯Javascript的图表库,快捷简便的生成统计图表。官网:https://www.echartsjs.comhtml菜鸟https://www.runoob.com/echarts/echarts-install.html<!DOCTYPEhtml><htmllan 查看详情

echarts快速入门---------v客学院技术分享

ECharts,一个使用JavaScript实现的开源可视化库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的矢量图形库ZRender,提供直观,交互丰富,可高度个性化定制的... 查看详情

.net开源免费图表组件库,winform,wpf通用(代码片段)

...到这个库,我看不懂,但我大受震撼,这么好的项目当然要分享出来了。https://github.com/ScottPlot/ScottPlotScottPlot是一个.NET图表组件,主要有以下特点:适用范围广:同时适用于WinForms,WPF,Avalonia,Console,支持 查看详情

开源一个android自定义图表库(代码片段)

类库接入使用示例1、南丁格尔玫瑰图NightingaleRoseChart2、占比饼状图表PieChartLayout3、进度环形图ProgressPieChart4、纵向柱状图BarVerticalChart5、横向柱状图BarHorizontalChart源码下载 ??项目中有一些图表需求,一开始尝试使用一些开源... 查看详情

开源图标库hellocharts常见api总结

hellocharts是一个用来生成统计图表的三方库,目前支持折线图、柱状图和饼状图等常见图表。支持缩放、滑动和动画效果。是一个非常实用的Android平台的图标库。在这里我对hellocharts中常见的api进行了整理,以供方便地进... 查看详情

mpandroidchart开源图表库之饼状图(代码片段)

MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种统计图表,而且可以对图表进行拖动和缩放操作,应用起来非常灵活。MPAndroidChart同样拥有常用的图表类型:线型图、饼图、... 查看详情

arcgisapiforjs之echarts开源js库实现地图统计图分析

前面写过一篇关于arcgisapiforjs实现地图统计图的,具体见:http://www.cnblogs.com/giserhome/p/6727593.html那是基于dojo组件来实现图表统计的,实现的效果一般般;所以,本篇利用arcgisapiforjs结合echarts实现统计图效果,效果比之前好看,效... 查看详情

开源图标库hellocharts常见api总结

hellocharts是一个用来生成统计图表的三方库,目前支持折线图、柱状图和饼状图等常见图表。支持缩放、滑动和动画效果。是一个非常实用的Android平台的图标库。在这里我对hellocharts中常见的api进行了整理,以供方便地进... 查看详情

是否有用于创建图表的 javascript 库? [关闭]

】是否有用于创建图表的javascript库?[关闭]【英文标题】:Isthereajavascriptlibraryforcreatinggraphs?[closed]【发布时间】:2011-12-0304:57:07【问题描述】:我需要一个javascript/jquery库来动态创建图表。我发现的大多数库仅用于可视化。我需... 查看详情

.net开源免费图表组件库,winform,wpf通用(代码片段)

...个库,我看不懂,但我大受震撼,这么好的项目当然要分享出来了。https://github.com/ScottPlot/ScottPlotScottPlot是一个.NET图表组件,主要有以下特点:•适用范围广:同时适用于WinForms,WPF,Avalonia,Console,支持.NETFramework4.6.1及以上,NE... 查看详情

在同一页面显示多个javascript统计图表(代码片段)

最近我接到一个开发任务,要求就“售后服务客户满意度调查问卷表”里客户填写的反馈答案做一个统计。问题的例子如下:您最后一次是何时购买了我们的产品?服务人员服务态度是否友好、工作尽职尽责?您对我公司提供的... 查看详情

vue怎么展示聚类分析过程

...有用的技术和工具:1.D3.js:D3.js是一种用于创建可视化的JavaScript库,可以使用其提供的各种图表、图形和交互功能来展示聚类分析的过程和结果。2.ECharts:ECharts是一个基于JavaScript的开源可视化库,支持多种图表类型和交互方式... 查看详情

JavaScript 图表库

】JavaScript图表库【英文标题】:JavaScriptChartLibrary【发布时间】:2010-09-1207:24:10【问题描述】:有人会推荐一个特定的-特别是根本不使用Flash的吗?【问题讨论】:【参考方案1】:如果您使用jQuery,我发现flot非常好-试试examples... 查看详情

chart图表开源项目总结(代码片段)

...lloCharts:兼容到API8的Android图表库3. MPAndroidChart :一个强大的Android图表视图/图形库一、WilliamChart项目地址:https: 查看详情

哪个是涉及图表的最佳开源 JavaScript 移动框架? [关闭]

】哪个是涉及图表的最佳开源JavaScript移动框架?[关闭]【英文标题】:WhichisthebestOpenSourceJavaScriptMobileFrameworkinvolvingcharts?[closed]【发布时间】:2012-02-0111:26:39【问题描述】:我将开发一个包含大量条形图和饼图的移动应用程序。... 查看详情

用于海量数据的 Javascript 图表库 [关闭]

】用于海量数据的Javascript图表库[关闭]【英文标题】:Javascriptchartinglibraryforhugedata[closed]【发布时间】:2011-06-2812:39:05【问题描述】:有人知道可以处理大量数据集的Javascript图表库吗?“巨大”是指绘制一个包含大约1,000条线和... 查看详情

吊打pyecharts,又一个python绘图库!

...其中一个示例图片,还很精致。今天正好把完整过程分享给大家,看看这个新库绘图也可以这么漂亮!作者:朱小五来源:快学Python(ID:kxpython)01Python可视化新秀这个Python可视化新秀,在GitHub... 查看详情

给开发者提供的35款javascript图形图表库

给开发者提供的35款JavaScript图形图表库图表是数据图形化的表示,也就是“通过形象的图表来展示数据,比如条形图,折线图,饼图”。几乎每个开发或者项目管理团队都需要图表或者图形来简化理解,可视化复杂的数据... 查看详情