【发布时间】:2021-06-13 15:14:08
【问题描述】:
我必须使用示例数据类别 = [30,32,58,62] 在我的网站上绘制像 that 这样的圆环图。
如您所见,每个部分都有径向渐变。我已经尝试为此使用 d3 库,但我只能获得从图形中心开始的渐变,而不是从每个部分的中心开始。
每个部分内还有一个盒子阴影。我该怎么做?
该图应用的样式如下:
不同部分之间的距离为1%
边框半径:6px;
CSS
background: radial-gradient(49.84% 49.84% at 49.84% 50.16%, rgba(255, 184, 0, 0.56) 81.25%, rgba(255, 239, 153, 0.32) 100%);
box-shadow: inset -1px 1px 1px rgba(255, 255, 255, 0.5), inset 0px 0px 20px rgba(255, 176, 57, 0.9);
background: radial-gradient(49.84% 49.84% at 49.84% 50.16%, rgba(191, 191, 191, 0.345) 82.81%, rgba(228, 228, 228, 0.1) 92.19%);
box-shadow: inset -1px 1px 1px rgba(255, 255, 255, 0.5), inset 0px 0px 20px rgba(131, 131, 131, 0.6);
background: radial-gradient(49.84% 49.84% at 49.84% 50.16%, rgba(166, 166, 166, 0.1725) 82.81%, rgba(203, 203, 203, 0.05) 92.19%);
box-shadow: inset -1px 1px 1px rgba(255, 255, 255, 0.5), inset 0px 0px 20px rgba(105, 105, 105, 0.2);
background: radial-gradient(49.84% 49.84% at 49.84% 50.16%, rgba(255, 184, 0, 0.24) 81.25%, rgba(255, 239, 153, 0.12) 100%);
box-shadow: inset -1px 1px 1px rgba(255, 255, 255, 0.5), inset 0px 0px 20px rgba(255, 176, 57, 0.4);
【问题讨论】:
-
请看一下这个stackoverflow.com/questions/52908752/svg-shaping-curved-edges 以了解如何绘制线段。您可以根据需要绘制任意数量的线段,每个线段都有您需要的填充,并将它们旋转到需要的位置
标签: javascript css svg d3.js