Stroke-dasharray到可视化数据,没有库
stroke-dasharray to visual data without libraries
我试图在不使用库的情况下基于数据值动画svg圆圈的stroke-dasharray
。
数据来自javascript计算,所以每个圆圈的笔画长度会不同。
代码如下:
或
var circle_1 = 20,
circle_2 = 33,
circle_3 = 42;
document.getElementById('circle_1').innerHTML = circle_1;
document.getElementById('circle_2').innerHTML = circle_2;
document.getElementById('circle_3').innerHTML = circle_3;
.container {
text-align: center;
height: 200px;
}
li {
list-style: none;
display: inline-block;
margin: 100px 50px;
position: relative;
width: 100px;
height: 100px;
}
circle {
stroke: #222;
fill: transparent;
stroke-width: 3px
}
.result {
position: absolute;
top: 40%;
left: 40%;
}
<div class="container">
<li>
<svg width="100" height="100">
<circle cy="50" cx="50" r="40" stroke-dasharray="0em" stroke-dashoffset="0" />
</svg>
<div class="result" id="circle_1"></div>
</li>
<li>
<svg width="100" height="100">
<circle cy="50" cx="50" r="40" stroke-dasharray="0em" stroke-dashoffset="0" />
</svg>
<div class="result" id="circle_2"></div>
</li>
<li>
<svg width="100" height="100">
<circle cy="50" cx="50" r="40" stroke-dasharray="0em" stroke-dashoffset="0" />
</svg>
<div class="result" id="circle_3"></div>
</li>
</div>
如果我理解正确的话,您需要使用SVG圆圈而不是库的饼状图。我最近做了一些类似的事情,这是我做的一个mixin:
http://codepen.io/Draccoz/pen/GJVJVM=pie-chart($size, $ring-size, $ring-color: false, $bg-size: 0, $bg-color: transparent)
$d: $size - $ring-size
width: $size
height: $size
>
circle
cx: $size / 2
cy: $size / 2
&:nth-child(1)
r: $bg-size / 2
@if $bg-color
fill: $bg-color
&:nth-child(2)
font-size: $d * 1.01 * $PI
stroke-width: $ring-size
r: $d / 2
fill: transparent
@if $ring-color
stroke: $ring-color
/* stroke-linecap: round */
transition: stroke-dashoffset 1s ease-in-out
transform: translateY($size) rotate(-90deg)
stroke-dasharray: 1em 1em
stroke-dashoffset: 0
@content
希望能有所帮助。
相关文章:
- 加载泰坦尼克号可视化数据时出现问题
- 鸡尾酒配方数据可视化
- D3.js 和来自 CSV 文件图形宽度的数据可视化
- 从剑道数据可视化图表读取数据
- 通过使用 json 和 javascript 实现数据可视化
- 用于可重用数据可视化的 Angularjs 结构
- 是否有从服务器(如 postgres)中提取数据的数据可视化库
- 用于JavaScript数据可视化与缩小CSV的快速数据库
- D3中的Y轴标记和数据可视化
- 数据可视化的性能和开发可能性
- 数据可视化:用Javascript或Python生成简单PDF图表的最佳工具
- Sunburst数据可视化-附加环
- 联合/交叉数据可视化- javascript优先
- 使用dc.js和MongoDB实现数据可视化
- 在剑道数据可视化图本地数据绑定中,JSON数据值溢出
- 使用瓶子/烧瓶编写API来构建数据可视化
- 如何处理D3的数据可视化方面
- 如何使用 phantomjs 通过动态数据可视化拍摄屏幕截图
- 将 java 与 javascript 连接起来,以便在浏览器中实现数据可视化
- 数据可视化与jVectorMap/JQVMap