स्कॉट के उत्तर में जोड़ने के लिए, इम (फॉन्ट साइज यूनिट्स) के साथ डाई का उपयोग निरपेक्ष y समन्वय के सापेक्ष पाठ संरेखित करने के लिए बहुत उपयोगी है। यह MDN डाई टेक्स्ट एलिमेंट उदाहरण में कवर किया गया है ।
डाई = 0.35em का उपयोग फ़ॉन्ट आकार की परवाह किए बिना लंबवत केंद्र पाठ में मदद कर सकता है। यदि आप अपने पूर्ण निर्देशांक द्वारा वर्णित बिंदु के आसपास अपने पाठ के केंद्र को घुमाना चाहते हैं तो यह भी मदद करता है।
<style>
text { fill: black; text-anchor: middle; }
line { stroke-width: 1; stroke: lightgray; }
</style>
<script>
dataset = d3.range(50,500,50);
svg = d3.select("body").append("svg");
svg.attr('width',500).attr('height', 500);
svg.append("line").attr('x1', 0).attr('x2', 500).attr('y1', 100).attr('y2', 100);
svg.append("line").attr('x1', 0).attr('x2', 500).attr('y1', 200).attr('y2', 200);
group = svg.selectAll("g")
.data(dataset)
.enter()
.append("g");
// Without the dy=0.35em offset
group.append("text")
.text("My text")
.attr("x",function (d) {return d;})
.attr("y",100)
.attr("transform", function(d, i) {return "rotate("+45*i+","+d+",100)";});
// With the dy=0.35em offset
group.append("text")
.text("My text")
.attr("x",function (d) {return d;})
.attr("y",200)
.attr("dy","0.35em")
.attr("transform", function(d, i) {return "rotate("+45*i+","+d+",200)";});
<script>
कोडपेन में देखें
यदि आप "डाई = 0.35em" को शामिल नहीं करते हैं, तो शब्द पाठ के निचले भाग के चारों ओर घूमते हैं और नीचे 180 संरेखित करने के बाद जहां वे रोटेशन से पहले थे। "डाई = 0.35em" सहित उन्हें पाठ के केंद्र के चारों ओर घुमाता है।
ध्यान दें कि डाई को सीएसएस का उपयोग करके सेट नहीं किया जा सकता है।
d3.js
, इसका उपयोग विभिन्न इकाइयों के संयोजन के लिए किया जाता है। जैसेx="3" dx="0.5em"
कि 3 पिक्सल + आधी टेक्स्ट लाइन कितनी है।