D3 数据可视化的简单例子

D3.js可以很好地展示数据,并绘制成各种表格,一个简单例子如下:

<html>  
<head>  
	<meta charset="utf-8">  
	<title>做一个简单的图表</title>  
</head> 
<body>  
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>  
<script>
	
	var width = 300;	//画布的宽度
	var height = 300;	//画布的高度


	var svg = d3.select("body")				//选择文档中的body元素
				.append("svg")				//添加一个svg元素
				.attr("width", width)		//设定宽度
				.attr("height", height);	//设定高度
	
	var dataset = [ 250 , 210 , 170 , 130 , 90 ];
	
	var rectHeight = 25;	//每个矩形所占的像素高度(包括空白)


	svg.selectAll("rect")
		  .data(dataset)
		  .enter()
		  .append("rect")
		  .attr("x",40)
		  .attr("y",function(d,i){
				return i * rectHeight;
		  })
		  .attr("width",function(d,i){
		  	if(i==2){
		  		return 20;
		  	}
		  	
		   		return d;
		  })
		  .attr("height",rectHeight-2)
		  .attr("fill","steelblue");
	   
</script>  
	
</body>  
</html> 

   结果为:

  参考链接:

    http://blog.csdn.net/lzhlzz/article/details/39341557


  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的用 D3.js 实现交互式数据可视化例子: 首先,我们需要一个 HTML 页面,包含一个容器元素用于显示可视化图表。 ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Interactive Data Visualization with D3</title> <script src="https://d3js.org/d3.v5.min.js"></script> </head> <body> <div id="chart"></div> </body> </html> ``` 然后,我们需要用 JavaScript 代码创建可视化图表。以下是一个简单例子,使用 D3.js 读取并可视化 CSV 格式的数据。 ```javascript // 设置画布大小 var width = 600; var height = 400; // 创建 SVG 元素 var svg = d3.select("#chart") .append("svg") .attr("width", width) .attr("height", height); // 读取 CSV 格式的数据 d3.csv("data.csv", function(error, data) { if (error) throw error; // 处理数据 data.forEach(function(d) { d.value = +d.value; // 将 value 字符串转换为数字 }); // 创建柱状图 var bars = svg.selectAll("rect") .data(data) .enter() .append("rect") .attr("x", function(d, i) { return i * (width / data.length); }) .attr("y", function(d) { return height - d.value; }) .attr("width", width / data.length - 1) .attr("height", function(d) { return d.value; }) .attr("fill", "steelblue"); // 添加交互效果 bars.on("mouseover", function() { d3.select(this) .attr("fill", "orange"); }) .on("mouseout", function() { d3.select(this) .attr("fill", "steelblue"); }); }); ``` 以上代码实现了一个简单的柱状图,并为柱状图添加了交互效果,当鼠标悬停在某个柱子上时,该柱子的颜色会变为橙色。 当然,这只是一个简单例子D3.js 实际上可以实现非常复杂的交互式数据可视化。需要注意的是,D3.js 的学习曲线比较陡峭,需要一定的 JavaScript 和数据可视化的基础知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值