d3 在镶边中转换 svg 的解决方法
d3 Workaround for svg transform in chrome
我创建了一个内部维度来切断 d3 中的绘图。这是代码:
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
var nestedSVG = svg.append('svg')
.attr("width", innerWidth)
.attr("height", innerHeight)
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
这在火狐中工作正常。但是我了解到chrome不支持这样的svg转换(而且它在chrome中不起作用)。有没有解决方法,以便我可以转换嵌套SVG?
您可以在嵌套的 SVG 上设置x
和y
属性以创建坐标的平移。
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
var nestedSVG = svg.append('svg')
.attr("width", innerWidth)
.attr("height", innerHeight)
.attr("x", margin.left)
.attr("y", margin.top);
对于更复杂的转换,您将使用父元素或子元素<g>
并转换它,正如您在上一个问题的注释中提到的。
相关文章:
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何更改<svg>标记为<img>用js标记
- 如何解决Yii中的页面刷新问题
- 锚点元素不't使用svg时,请打开EDGE上的href
- 测试Angular Service解决错误回调中的promise
- 带有填充属性的SVG矩形显示在包含元素的上方插入框阴影
- 使用onclick绘制SVG路径
- SVG/JavaScript:尝试选择和更改多边形点
- 顺时针旋转Svg元件
- 禁用SVG拖动
- 在select元素中显示highchart dashstyle(svg)
- 在D3.js中,有没有任何方法可以将x和y方向上的滚动事件绑定到平移svg
- 当使用canvg将Highchart SVG转换为PNG时,所有文本都会出现两次——如何解决
- SVG 符号不会触发加载事件(仅在 Firefox 中).我寻找解决方法
- d3 在镶边中转换 svg 的解决方法
- 动态转换 SVG 的强大解决方案
- 寻找一个交互式javascript地图解决方案,允许放大,标记和使用位图图像(不是SVG))
- 用于Safari的SVG SMIL动画解决方案
- 使用SVG文件的跨浏览器解决方案