gpt4 book ai didi

javascript - 使用 D3 选择函数在 HTML 布局中正确对齐 SVG

转载 作者:行者123 更新时间:2023-11-28 16:39:47 25 4
gpt4 key购买 nike

我正在研究 D3 图表。

在我的 <body>我有标签:

<body>
<div id="divs" style="margin-left: 5px; width: 100%;">
<d1 style="float: left;"><big>Oil Consumption - Barrels (from 1965)</big></d1> <br><br>
<d1 style="float: left;">BP Statistical Review of World Energy, June 2015</d1> <br><br>
<div id="div"></div>
<div id="div1" style="float: left;"></div>
</div>
</body>

在我的 Javascript 代码中我有:

var svg = d3.select("body").append("svg").attr("width",700).attr("height",400);

问题是 d3.select("body")在最后一个 div 之后垂直附加我的 svg 图表,而我想要做的是将 svg 与 div 水平对齐。

我该怎么做?

这是完整的 Plunkr -> Plunkr

UPDATE

我已经按照@Mark 的建议进行了尝试,但它不起作用。这是完整的 Plunkr -> Plunkr

var svg = d3.select("#divs")
.append("div")
.style("float","left")
.style("margin-left",400)
.style("width", "75%")
.append("svg")
.attr("width", 700)
.attr("height", 400);

最佳答案

如果我没理解错的话,你想要你的 svg位于 div 的右侧id 为 div1。

首先,为了让它工作,只需设置 float: left在 div1 上是不够的,它需要一个以 % 或 px 为单位的显式 宽度

其次,您需要制作您的 svg div 的 child 使用 div 的 id 并将其包装在 div 中也以显式宽度 float :

var svg = d3.select("#divs")
.append("div")
.style("float","left")
.style("width", "75%")
.append("svg")
.attr("width", 700)
.attr("height", 400);

UPDATE In order for your code to work I had to modify it to:

var svg = d3.select("#divs")
.append("div")
.style("margin-left", 400)
.style("margin-top", 50)
.style("width", "75%")
.append("svg")
.attr("width", 800)
.attr("height", 300);

和 div 到 <div id="div1" style="float:left; width: 25%;"></div>

这是结果 -> http://plnkr.co/edit/8lU9fjRHLQjP5xI2PCBf?p=preview

关于javascript - 使用 D3 选择函数在 HTML 布局中正确对齐 SVG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33896259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com