做为一个对UI
和动画敏感的切图仔,在平常开发之余,也会关注一些贼好看的图表库和插件。html
接下来,我将给你们介绍几款web/python/vue/react
里漂亮得不行的开源库/实现。前端
roughViz.js
基于D3(v5)
, roughjs
, 和handy
。vue
有三种衡量方式:python
粗糙度: react
线条种类: git
线条粗细: github
简答CDN
:web
<script src="https://unpkg.com/rough-viz@1.0.5"></script>
复制代码
npm
:spring
npm install rough-viz
复制代码
react/vue
:npm
npm install react-roughviz
npm install vue-roughviz
复制代码
甚至在Python
中也能够:
pip install roughviz
复制代码
首先定义两个div
<div id="vis0"></div>
<div id="vis1"></div>
复制代码
以后new
两个实例:
new roughViz.BarH(
{
element: '#vis0',
title: "Vehicles I've Had",
titleFontSize: '1.5rem',
legend: false,
margin: {top: 50, bottom: 100, left: 160, right: 0},
data: {
labels: ['1992 Ford Aerostar Van', '2013 Kia Rio', '1980 Honda CB 125s', '1992 Toyota Tercel'],
values: [8, 4, 6, 2]
},
xLabel: 'Time Owned (Years)',
strokeWidth: 2,
fillStyle: 'zigzag-line',
highlight: 'gold',
}
);
new roughViz.BarH(
{
element: '#vis1',
titleFontSize: '1.5rem',
data: 'https://raw.githubusercontent.com/jwilber/random_data/master/owTanks.csv'
color: 'tan',
labels: 'name',
values: 'health',
title: "Overwatch Tank Health",
roughness: 4,
}
);
复制代码
整个的配置很是简洁,其中:
data
: 数据源,支持简单对象或csv
格式的文件roughness
: 线条粗糙混乱层级。若是调成10,就会变成这样:
线上体验demo
: blockbuilder.org/jwilber/419…
具体用法请参照官方文档:github.com/jwilber/rou…
react-three-fiber
Web
和react-native
均可用的高性能Threejs for react
库。
能够在React
外部驱动渲染循环,而不会产生额外开销。
最新版本采用了Hooks
的写法,不像以往强行兼容的Threejs
,写起来更加友好。
不止抖音字体爆炸特效,它能实现什么,源于你的技术和想象力。
如下一部分特效:
若是有人学会了...大佬带带?
其中用到一个库:react-spring
,这是react
最优秀的动画库,没有之一。
字体爆炸:codesandbox.io/s/y3j31r13z…
Mini Music Player - VueJS
国外友人写的一个Vue.js
音乐播放器,好看的不得了。
其中的交互和逻辑,也是很是精炼。
UI
都夸好的卡片验证库:interactive-paycard
这个11月Vue
新库一发布,就狂揽3k+
star,过于优秀。
完整库名vue-interactive-paycard
React
版的做者表示也即将发布了。
SandDance
微软出品,必属精品
SandDance
是使用Vega
进行图表布局,使用Deck.gl
进行WebGL
渲染。
能在如此密集的数据量上保持动画流畅和美观的,也就微软爸爸能作到了。
我先跪了,大家随意。
此外,该库还有多种使用方式:
Power BI
软件内使用:
PowerBI
是微软发布的一款数据可视化软件,能够在较短期内生成各类报表。
VSCode
插件形式:
React
:
AR
: AR.js
+Three.js
+Autodesk 3D
这是个颇有意思的实现,大体流程是:
AR.js
程序开始ARToolKit
识别到图片标记A-Frame.js
开始调用Three.js
渲染3D模型首先咱们先到 https://sketchfab.com
下载本身喜欢的3D模型
下载glTF
格式(A
框架提供glTF
,OBJ
两个格式官网建议使用glTF
)
index.html
并把这些代码都贴上<script src="https://aframe.io/releases/0.9.0/aframe.min.js"></script>
<script src="https://rawgit.com/jeromeetienne/ar.js/master/aframe/build/aframe-ar.js"></script>
<script>THREEx.ArToolkitContext.baseURL = 'https://rawgit.com/jeromeetienne/ar.js/master/three.js/'</script>
<body style='margin : 0px; overflow: hidden;'>
<a-scene embedded arjs='sourceType: webcam; debugUIEnabled: false;'>
<a-marker type='pattern' url='res/pattern-marker.patt'>
<a-entity position='-3 2 0' text="width: 5; value:I am Psyduck. We are pokemon. We love you"></a-entity>
<a-entity position='0 0 0' gltf-model="url(res/scene.gltf)"></a-entity>
</a-marker>
</a-scene>
</body>
复制代码
A-frame
的html
标签添加一个a-scene
摄像头并把AR.js
崁入Marker
若是标记的Marker
出如今摄像头里就会执行下方的事情3D
模型原文:AR用AR.js作一個讓另對方 喔喔喔喔! 的小卡片吧!
请欣赏一个价值2199刀的模型
还有超赞的《这个杀手不太冷》女孩模型
这也太好看了吧。
想体验AR.js
的能够放大下面这图,而后用相机扫一扫。
本来想凑齐十个再发的,但找了很久,都没什么开源库能入我法眼。
恳请你们,推荐几款骚得不行的开源库,我来补充补充,谢谢喇。
若是你以为这篇内容对你挺有启发,我想邀请你帮我三个小忙:
也能够来个人GitHub
博客里拿全部文章的源文件:
前端劝退指南:github.com/roger-hiro/… 一块儿玩耍呀。~