D3에서 그래프를 만들고 있는데, 그래프의 Y 축의 축척을 의의 요소 크기를 조정하지 않고 크기를 조정하려고했습니다. (그리고 나는 그래프를 다시 그려야 할 필요가 없다).SVG 요소를 개별적으로 확장하는 방법.
다른 말로하면, SVG를 사용하여 객체의 크기를 변경하지 않고 객체 사이의 거리를 조절할 수 있기를 원합니다.
this article의 마지막 부분을 읽고 내가 할 수있는 것처럼 보이지만, 세부 사항을 올바르게 얻을 수없는 것 같습니다. 여기
는 내가 뭘하려고 오전의 단순화 codepen입니다 : https://codepen.io/thesuperuser/pen/BmdNwz/<symbol id="circle" width="20" height="20" preserveAspectRatio="none">
<circle cx="10" cy="10" r=10></circle>
</symbol>
후 나는이 기호를 사용하고, 시도하고 D3와 심볼의 크기를 유지
let svg2 = d3.select('svg.scaled')
svg2.selectAll('use')
.data(data)
.enter()
.append('use')
.attrs({
class: 'circle',
href: '#circle2',
x: d => scale(d),
y: '50%',
height: dotR*2,
width: dotR*2,
})
이것은 첫 번째 예제에서 동작을 복제하는 것처럼 보입니다.이 동작은 viewBox
및 preserveAspectRatio
이 동작하는 방식으로 크기와 거리를 모두 조절합니다.
허용 된 대답을 사용하여 작업 예제로 codepen 링크가 업데이트되었습니다. –