我正在使用d3.svg.arc()繪製一個圓的一部分,將內部和外部半徑設置爲相同並具有一些隨機的掃掠角度。現在我想在它的兩端都有箭頭。 marker-start屬性工作正常。但問題在於標記結束。當我運行代碼時,我在開始時就獲得了兩個標記。請幫助我。如何在圓弧路徑元素的兩端獲取箭頭?
<svg version="1.1">
<defs>
<marker id="endtriangle"
viewBox="0 0 10 10" refX="0" refY="5"
markerUnits="strokeWidth"
markerWidth="4" markerHeight="3"
orient="auto">
<path d="M 0 0 L 10 5 L 0 10 z" />
</marker>
<marker id="starttriangle"
viewBox="0 0 10 10" refX="5" refY="5"
markerUnits="strokeWidth"
markerWidth="4" markerHeight="3"
orient="auto">
<path d="M -2 5 L 8 0 L 8 10 z" />
</marker>
</defs>
</svg>
<script type="text/javascript">
var arc=d3.svg.arc()
.innerRadius(140)
.outerRadius(140)
.startAngle(0)
.endAngle(Math.PI/3)
d3.select("svg").append("path")
.attr("d",arc)
.attr("transform","translate(200,200)")
.attr("stroke","black")
.attr("marker-end","url(#endtriangle)")
.attr("marker-start","url(#starttriangle)")
.attr("fill","none")
.attr("stroke-width","10")
.attr("id","dimen")
</script>
</body>
你能顯示你的svg文件的相關部分嗎? – orique
用代碼更新了問題。 – charan