精品推荐:4个顶级开源JavaScript图表库

bigdata 2018-12-11 22:37:15 ⋅ 650 阅读

图表对于可视化数据和使网站具有吸引力非常重要。可视化演示使分析大块数据和传达信息变得更加容易。JavaScript图表库使你能够以易于理解和交互的方式可视化数据,并改善网站的设计。有四个顶级开源JavaScript图表库,你一定要Get!

1.Chart.js

Chart.js是一个开源JavaScript库,允许你在应用程序上创建动画,美观和交互式图表。它可以在MIT许可下获得。

使用Chart.js,你可以创建各种令人印象深刻的图表和图形,包括条形图,折线图,面积图,线性比例和散点图。它完全响应各种设备,并利用HTML5 Canvas元素进行渲染。

以下是使用库绘制条形图的示例代码。我们将使用Chart.js内容交付网络(CDN)将其包含在此示例中。请注意,使用的数据仅用于说明目的。

<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.5.0/Chart.min.js"></script>
</head>
<body>
<canvas id="bar-chart" width=300" height="150"></canvas>
<script>new Chart(document.getElementById("bar-chart"),
{type: 'bar',data: {labels: ["North America", "Latin America", "Europe", "Asia", "Africa"],datasets: [ {label: "Number of developers (millions)",backgroundColor: ["red", "blue","yellow","green","pink"],data: [7,4,6,9,3] } ] },options: {legend: { display: false },title: {display: true,text: 'Number of Developers in Every Continent'},scales: {yAxes: [{ticks: {beginAtZero:true} }] } } });
</script>
</body>
</html>

从这段代码中可以看出,通过将类型设置为bar来构造条形图。你可以将条形的方向更改为其他类型,例如将type设置为horizontalBar。

通过在backgroundColor数组参数中提供颜色类型来设置条形图的颜色。

颜色分配给在相应数组中共享相同索引的标签和数据。例如,第二个标签“拉丁美洲”将设置为“蓝色”(第二种颜色)和4(数据中的第二个数字)。

这是此代码的输出 

2.Chartist.js

Chartist.js是一个简单的JavaScript动画库,允许你创建可自定义和美观的响应图表和其他设计。开源库可在WTFPL或MIT许可下获得。

该库是由一群对现有图表工具不满意的开发人员开发的,因此它为设计人员和开发人员提供了出色的功能。

在项目中包含Chartist.js库及其CSS文件后,你可以使用它们创建各种类型的图表,包括动画,条形图和折线图。它利用SVG动态渲染图表。

以下是使用库绘制饼图的代码示例

<link href="https//cdn.jsdelivr.net/chartist.js/latest/chartist.min.css" rel="external nofollow" rel="stylesheet" type="text/css" />
<style>
.ct-series-a .ct-slice-pie {
fill: hsl(100, 20%, 50%);
/* filling pie slices */
stroke: white;
/*giving pie slices outline */
stroke-width: 5px;
/* outline width */
}
.ct-series-b .ct-slice-pie {
fill: hsl(10, 40%, 60%);
stroke: white;stroke-width: 5px; }
.ct-series-c .ct-slice-pie {
fill: hsl(120, 30%, 80%); }
.ct-series-d .ct-slice-pie {
fill: hsl(90, 70%, 30%); }
.ct-series-e .ct-slice-pie {
fill: hsl(60, 140%, 20%); }
</style>
<div ct-golden-section"></div>
<script src="https://cdn.jsdelivr.net/chartist.js/latest/chartist.min.js"></script>
var data = { series: [45, 35, 20] }; var sum = function(a, b) { return a + b }; new Chartist.Pie('.ct-chart', data, { labelInterpolationFnc: function(value) { return Math.round(value / data.series.reduce(sum) * 100) + '%'; } });
</script>

Chartist JavaScript库允许你使用各种预构建的CSS样式,而不是指定项目的各种与样式相关的组件。你可以使用它们来控制创建的图表的外观。

例如,预先创建的CSS类.ct-chart用于构建饼图的容器。而且,.ct-golden-section类用于获取宽高比,可以使用响应式设计进行缩放,并为你节省计算固定尺寸的麻烦。Chartist还提供了你可以在项目中使用的其他类别的容器比率。

要设置各种饼图样式,可以使用默认的.ct-series-a类。字母a与每个系列计数(a,b,c等)一起迭代,使得它与要设置样式的切片相对应。

Chartist.Pie方法用于创建饼图。要创建另一种类型的图表,例如折线图,请使用Chartist.Line。

这是代码的输出 

3.D3.js

D3.js是另一个很棒的开源JavaScript图表库。它可以在BSD许可下使用。D3主要用于根据提供的数据操纵和添加文档的交互性。

你可以使用这个神奇的3D动画库,使用HTML5,SVG和CSS可视化你的数据,让网站更具吸引力。从本质上讲,D3使你能够将数据绑定到文档对象模型(DOM),然后使用基于数据的函数来更改文档。

以下是使用库绘制简单条形图的示例代码

.chart div {font: 15px sans-serif;
background-color: lightblue;
text-align: right;
padding:5px;
margin:5px;
color: white;
font-weight: bold;
}
<div
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.5.0/d3.min.js">var data = [342,222,169,259,173];
d3.select(".chart")
.selectAll("div")
.data(data)
.enter()
.append("div")
.style("width", function(d){ return d + "px"; })
.text(function(d) { return d; });

使用D3库的主要概念是首先应用CSS样式选择指向DOM节点,然后应用运算符来操作它们,就像在其他DOM框架(如jQuery)中一样。

将数据绑定到文档后,将调用.enter()函数来为传入数据构建新节点。在.enter()函数之后调用的所有方法都将为数据中的每个项调用。

这是代码的输出 

4.ECharts

ECharts 由百度前端技术部开发的,是一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11、Chrome、Firefox、Safari等),底层依赖轻量级的 Canvas 类库 ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。

ECharts 有良好的自适应效果,ECharts 3 中更是加入了更多丰富的交互功能以及更多的可视化效果,并且对  

---------------END----------------

后续的内容同样精彩

长按关注“IT实战联盟”哦




全部评论: 0

    我有话说:

    开源推荐】基于 Go 语言的轻量级高性能日志 logit使用及测评

    logit 是一个简单易用并且是基于级别控制的日志,可以应用于所有的 GoLang 应用程序中。

    精品推荐:11高人气Javascript动画

    翻译 | 小生 来源 | https://www.zcfy.cc/article/11-javascript-animation-libraries-for-2018

    开源推荐」Nginx可视化配置工具—NginxWebUI,小白也可以玩转

    包括http协议转发, tcp协议转发, 反向代理, 负载均衡, ssl证书自动申请、续签、配置等

    11 Javascript机器学习

    1. Brain.js Brain.js是一个Javascript,用于替代(现在已弃用的)“ 脑 ”的神经网络,该可与Node.js一起使用或在浏览器中使用(注释计算),并为不同任务提供不同

    2018常用JavaScript

    9非常有用的Javascript来加速你的开发

    ECharts 5.0.1 发布,JavaScript 实现的交互式图表可视化

    Apache ECharts (incubating) 5.0.1 已发布,ECharts 是一个使用 JavaScript 实现的开源可视化,可以流畅的运行在 PC 和移动设备上,兼容

    开源资讯」React 17 正式版发布,构建用户界面的 JavaScript

    React简介 React(有时叫React.js或ReactJS)是 Facebook 推出的一个为数据提供渲染为 HTML 视图,用来构建用户界面的开源 JavaScript 。 React

    pgAdmin 4 v4.29 发布,PostgreSQL 的开源图形化管理工具

    pgAdmin开发团队近期宣布pgAdmin 4的小版本v4.29发布。该版本的pgAdmin 4包含18bug修复和新特性。想要获取详细的更新列表,请访问版本发布公告。 pgAdmin是一款针对

    精品推荐Javascript 将 HTML 页面生成 PDF 并下载

    最近碰到需求,需要把当前页面生成 pdf并下载,有需要的可以看看哦~~~

    精品推荐:大神总结的十大 JavaScript 错误及如何规避

    通过统计数据库中的1000多项目,我们发现在 JavaScript 中最常出现的错误有10。下面会向大家介绍这些错误发生的原因以及如何防止。

    精品推荐:微信小程序常见的UI框架/组件

    想要开发出一套高质量的小程序,运用框架,组件是省时省力省心必不可少一部分,随着小程序日渐火爆,各种不同类型

    Swagger接口文档工具:Knife4j 2.0.7 发布,细节优化

    Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能的工具 文档:https://doc.xiaominfo.com 效果(旧版):http

    Bootstrap 图标集 v1.2.0 发布-包含数十图标

    我们最新的 Bootstrap Icons 发布版包含数十图标、重新设计的文档和呼声最高的新特性 —— 图标字体! 新的社交网络图标 我们的社交图标工作一开始比较慢 —— 人们可能只

    GitHub精选:2018年11月份最热门的Java开源项目

    又到了揭晓 11 月份最热门 Java 开源项目排名的时候了,在本月的名单中,出现了几新面孔,如Java 核心知识、轻量级容错组件Resilience4j .....

    精品推荐:基于SpringBoot2.0的企业级开发脚手架

    SmallBun是参考多优秀的开源项目及自身学习、经验运用,高度整合封装而成的高效,高性能,强安全性的开源项目,内附Git源码地址

    精品推荐:JDFlutter | 京东技术中台新一代跨平台开发框架

    DFlutter 是商城共享技术部-多端融合技术部推出的新一代跨平台开发框架,可快速集成至现有 Android/iOS 工程,开发者可借助 JDFlutter 平台快速完成 Flutter 业务开发