7 Star 41 Fork 4

OI 开源 / VISLite

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

downloads npm cdn GitHub repo stars Gitee repo stars

VISLite

VISLite是一个使用TypeScript开发的可视化库。官网地址:https://oi-contrib.github.io/VISLite

主要提供了跨端的画布和计算,开发人员只需要按照文档的描述就可以非常简单的完成包括Web、uni-app、微信小程序等平台的可视化开发,除了必要的初始化差异,主要的业务代码部分不同端完全一致。

简介

这是一个轻量级的数据可视化资源库,目标是:帮助你更快速、简单、高效的开发出任意的可视化业务产品。

本项目已在开源中国中开源,欢迎关注和留言。

常用的算法

我们通过提供可视化常用的算法来帮助你绘制复杂图表。比如下面的树图,通过简单的配置就可以把任意格式的数据变成任意绘制的带坐标的数据:

上述例子的运行地址:从左到右树状图

除了树布局外,我们还提供了:刻度尺算法来帮助你计算刻度应该如何确定、等角斜方位投影墨卡托投影来绘制地图、插值函数来完成折线变光滑的曲线、变换矩阵提供各种坐标变换等。

画笔加强

我们对画笔进行了加强,使得其更简单好用。比如canvas、webgl,抽象出区域的概念,使得无论你绘制的图形多么的不规则,都可以很轻松的实现交互功能:

上述例子的运行地址:中国地图

画笔除了像上面那样为了方便交互而补充区域的设计外,还对原来的API进行了一次抽象,使得API更友好简单(比如WebGL,即使不会3D的人也可以轻松使用,而SVG的使用,你无需去记忆那些晦涩难懂的属性),同时,我们还抹平了不同版本浏览器等之间的差异。

数据驱动的3D

通过一个简单立方体JSON表达立方体意图,从而快速实现3D图表开发:

上述例子的运行地址:环图

立方体运算

借助我们提供的立方体运算就可以快速获得常见的立方体的立方体JSON数据:

上述例子的运行地址:水分子式H2O

支持跨端开发

除了Web端外,我们还针对uni-app、微信小程序等端进行了支持,并且不同端API保持一致,大大提高了代码的复用性:

上述例子的运行地址:金额波浪球

基于实际需要,我们目前对 Canvas 提供了跨端支持,除 Web端 外,还支持 原生微信小程序uni-app端 (编译成H5、微信小程序、支付宝小程序等) ,如果后续有必要,我们会对Canvas支持的端或SVG、WebGL等画笔进行更多端扩展。

可视化大屏

当然,按照业务和UI设计,快速开发一个大屏也是相对容易的:

上述例子的运行地址:数据看板大屏

3D模型编辑器

为了更好的绘制3D场景,我们提供了一个简易版本的编辑器:

上述例子的运行地址:3D模型编辑器

特点

  • 灵活的引入方式:包括npm安装后按照ES ModuleCommonJS规范引入或直接使用script标签的CDN方式。
  • 按需引入或全局引入:支持源码TS引入、按需JS引入或者全量引入等多种方式。
  • 简单与复杂共存:一方面我们提供了可视化需要的基础功能,你可以按照自己的需要组合使用;另一方面,为了加速开发,我们针对常见的可视化业务场景进行了封装,可以帮助你快速完成,你可以根据实际情况进行选择。
  • 向下兼容:我们向你保证,始终向下兼容(alpha和beta版本为测试版本,不包括),因此,无论何时,最新版本总是最好的选择。

版本说明:alpha为开发阶段、beta为发布前测试、rc为候选版本、无后缀的为正式版本。

需求墙

我们的目标是不断完善丰富可视化功能,非常希望获得你宝贵的建议和批评,无论任何想法,都可以给我们留言告诉我们。

你所提的任何建议我们都会在最长一周内进行反馈说明。

更新日志

详见正式版更新日志,我们会在每次发布完正式版本后更新其内容。

下一步

我们会在这里列出接下来的工作重心:

  • Canvas、SVG和WebGL画笔功能丰富
  • 为加速开发,提供常用坐标系和布局
  • 为更好的实现3D场景,维护3D模型编辑器,并同步升级相关内容
  • 文档优化(提高可读性、丰富用例、补充教程)

给我们留言告诉我们你希望快速扩展的功能,我们会优先你的建议考虑哦~

参与贡献

你可以选择下列一项或多项进行参与:

  • 代码维护:由于新功能或一些BUG的出现,对代码进行维护和升级。
  • 文档编辑:主要是接口文档和教程需要编辑,这很重要。
  • 用例开发和测试:在项目的test文件夹下有一些测试,而在docs文档中存在一些例子需要补充。
  • 参与讨论:主要是讨论未来如何发展,改造的方向等。

如果有意向加入我们,你可以通过提 issue 和我们取到联系,请简单说明一下情况,我们会尽快回复。

你可以查看VISLite 贡献指南文件了解更多细节,查看AUTHORS.txt了解所有的贡献者。

版权

MIT License

Copyright (c) zxl20070701 走一步,再走一步

MIT License Copyright (c) zxl20070701 走一步,再走一步 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

🎃 灵活、快速、简单的数据可视化交互式跨端前端库 💯 展开 收起
TypeScript 等 5 种语言
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
TypeScript
1
https://gitee.com/oi-contrib/VISLite.git
git@gitee.com:oi-contrib/VISLite.git
oi-contrib
VISLite
VISLite
master

搜索帮助