gpt4 book ai didi

javascript - D3 : Graph doesn't display the x and y axis

转载 作者:行者123 更新时间:2023-12-03 00:06:14 25 4
gpt4 key购买 nike

我有这个 d3 项目,但我似乎无法正确显示我的 x 和 y 轴。它只显示 y 轴上的前 2 个数字,仅此而已。任何人都可以帮助我为什么它不显示。我在这里缺少什么?

这是代码:

loadData = ()=> {
req = new XMLHttpRequest();
req.open("GET", "https://raw.githubusercontent.com/freeCodeCamp/ProjectReferenceData/master/GDP-data.json" , true);
req.send();
req.onload= ()=>{
json = JSON.parse(req.responseText);
//create measurements
const margin = 60
const width = 1000 - margin;
const height = 600 - margin;

//create svg
const svg = d3.select("svg");
const chart = svg.append("g")
.attr("transform", `translate(${margin}, ${margin})`);


//y-axis: split charts into 2 equal parts using scaling function
const yScale = d3.scaleLinear()
.range([height, 0]) //length
.domain([0,100]); //content

//create x-axis
const yAxis = d3.axisLeft(yScale);

//append y-axis
chart.append("g")
.call(yAxis);

//create x-scale
const xScale = d3.scaleBand()
.range([0, width]) //length
.domain([0,100]) //content
.padding(0.2);

//create x-axis
const xAxis = d3.axisBottom(xScale);

//append x-axis
chart.append("g")
.attr(`transform`, `translate(0, ${height})`)
.call(xAxis);
}
}

loadData();

这是我的代码笔: codepen

最佳答案

您正在使用的 Pane 大小为 w1000、h600(+边距)。相应地调整 SVG 元素(在 CSS 中)的大小,图表将按预期显示:

svg {
width: 1030px;
height: 630px;
}

PS:或者在 JS 代码中设置 svg 大小,因此您只需在一处定义这些数字。

关于javascript - D3 : Graph doesn't display the x and y axis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54956677/

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