D3.js 是一个 JavaScript 库,用于创建动态、交互式的数据可视化图表。气泡图(Bubble Chart)是 D3.js 中常用的一种图表类型,用于表示三个维度的数据。以下是关于 D3.js 气泡图的基础概念、优势、类型、应用场景以及常见问题解答:
气泡图通过点的大小来表示第三个维度的数据,通常用于展示三个变量之间的关系。常见的三个维度是:
以下是一个简单的 D3.js 气泡图示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>D3.js Bubble Chart</title>
<script src="https://d3js.org/d3.v7.min.js"></script>
<style>
.bubble {
fill: steelblue;
opacity: 0.5;
}
</style>
</head>
<body>
<svg width="600" height="400"></svg>
<script>
const data = [
{x: 100, y: 200, size: 30},
{x: 200, y: 300, size: 60},
{x: 300, y: 100, size: 90},
// 更多数据点
];
const svg = d3.select("svg");
const width = +svg.attr("width");
const height = +svg.attr("height");
const xScale = d3.scaleLinear().domain([0, d3.max(data, d => d.x)]).range([0, width]);
const yScale = d3.scaleLinear().domain([0, d3.max(data, d => d.y)]).range([height, 0]);
const sizeScale = d3.scaleLinear().domain([0, d3.max(data, d => d.size)]).range([10, 100]);
svg.selectAll("circle")
.data(data)
.enter()
.append("circle")
.attr("class", "bubble")
.attr("cx", d => xScale(d.x))
.attr("cy", d => yScale(d.y))
.attr("r", d => sizeScale(d.size));
</script>
</body>
</html>
这个示例代码展示了如何使用 D3.js 创建一个简单的气泡图。你可以根据实际需求调整数据和样式。
腾讯数字政务云端系列直播
高校公开课
腾讯数字政务云端系列直播
Game Tech
Game Tech
Game Tech
Game Tech
领取专属 10元无门槛券
手把手带您无忧上云