【发布时间】:2021-10-26 12:23:58
【问题描述】:
谁能提供任何参考如何在 d3js 中制作精确图表
如何将 SVG 旋转到相反的角度。请参阅图片了解更多详情。结果应该像给出的这个图像。 如果有人对此有一些建议的材料,那将非常有帮助。 我在这里给出的代码只显示了一列,而且方向相反
<style>
* {
margin: 30;
padding: 30;
border: 0;
}
body {
background: white;
}
.forward {
fill: #ee5252;
}
.top {
fill: #b43c3c;
}
.side {
fill: #b23b3b;
}
</style>
<script src="https://d3js.org/d3.v3.js"></script>
<svg>
</svg>
<script>
var svg = d3.select('svg');
var rect3d = svg.append('g')
.attr('height', 50)
.attr('width', 20)
.attr("transform", "translate (15,15)")
;
var rh = 130, rw = 20, ang = 45;
rect3d.append("rect")
.attr("class", "forward")
.attr("x", 0)
.attr("y", 0)
.attr("width", rw)
.attr("height", rh)
;
rect3d.append("rect")
.attr("class", "top")
.attr("x", 0)
.attr("y", 0)
.attr("width", rw)
.attr("height", rh / 2)
.attr("transform", "translate (" + (-rh / 2) + "," + (-rh / 2) + ") skewX(" + 45 + ")")
;
rect3d.append("rect")
.attr("class", "side")
.attr("x", 0)
.attr("y", 0)
.attr("width", rh/2)
.attr("height", rh)
.attr ("transform", "translate ("+(-rh/2)+","+(-rh/2)+") skewY("+ang+")")
;
</script>
【问题讨论】:
-
这能回答你的问题stackoverflow.com/questions/67457363/… 吗?
-
是的,非常感谢。你能告诉我如何绘制这个轴,使它看起来像 3d。
标签: javascript node.js d3.js