echarts,7月31日日报

7-31 工作计划:实现折线图,柱状图,饼图等基本图形。

折线图柱状图并存,提示框,图例,工具箱,最值平均值的使用。

完成情况:已完成.

8-1工作计划:

      学习并实现K线图的分布,本地数据的展示,如证券的折线图。

 

7-31效果展示:折线图和柱状图

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<!--首先引入echarts插件-->
		<script type="text/javascript" src="../js/echarts.min.js"></script>
	</head>
	<body>
		<!--为Echarts建立一个固定高宽的DOM-->
		<div id="main" style= "width:900px;height: 600px;"></div>
		
		<script type="text/javascript">
			<!--基于建立好的DOM,进行Echarts初始化-->
			var mychart = echarts.init(document.getElementById('main'));
			
			//设置展现的图配置项和数据
			
			var option = {
				//该展示图的标题
				title: {
					text: 'ECharts入门展示',
					subtext:'子标题吕泽坤',
					
					left:'40',
					borderColor:'#ccc',
					borderWidth:'2',
					textStye:{
						fontsize:20,
					}
					
				},
				//工具箱,下载箭头保存图片
				toolbox: {
					show :true,//是否显示
					feature: {
						saveAsImage:{
							show :true,
							title:'保存图片'
						},
						restore:{
							show:true,
							title:'还原',
							
						},
						dataView:{
							show:true,
							title:'数据视图'
						},
						dataZoom:{
							show:true,
							zoom:'区域缩放',
							back:'区域还原缩放'
						},
						magicType:{
							show:true,
							type:['line','bar'],
							title:{line:'切换为折线图',bar:'切换为柱状图'}
							
						},
						
					 
					}
				},
				//提示框的添加
				tooltip:{
					  trigger: 'axis'//坐标轴触发。axis多用于柱状图折线图。
				},
				//图例
				legend: {
					data: ['销量','产量'],
					
			
				},
				
				//x轴
				xAxis: {
					data:['篮球','足球','网球','橄榄球','棒球','冰球']
				},
				//Y轴
				yAxis: {
					
				},
				//数据
				series:[{
					
					name:'销量',
					type:'bar',
					data:[5,10,30,25,24,27],
					markPoint:{
						//这里用的是V3.x版本,才能出现点击最大值,V4.x没有显示最大值。多条折线
						data:[
						{type:'max',name:'最大值'},
						{type:'min',name:'最小值',symbol:'arrow'}
						]
					},
					markLine:{
						data:[
						{type:'average',name:'平均值',}
						]
					}
						
					
				},
				{
					
                    name: '产量',
                    type: 'line',
                    data: [7, 30, 50, 11, 40, 80]
                }
				]
			};
			//使用上面指定的配置资源和数据显示图表
			mychart.setOption(option);
		</script>
	</body>
</html>

饼状图:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="../js/echarts.min.js" ></script>
	</head>
	<body>
		<div id = "main" style="width:900px;height:600px"></div>
		
		<script type="text/javascript">
	
                // 基于准备好的dom,初始化echarts实例
       var myChart = echarts.init(document.getElementById('main'));
			var option= {
				title:{
					text:'测试饼图',
					subtext:'小标题',
					x:'center'
				},
				tooltip:{
					trigger:'item',
					formatter:"<a><br/>{b}: {c}({d}%)",
				},
				legend: {
                   orient: 'vertical',
                   left: 'left',
                   data: ['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']
               },
               series:[{
               	    name:'范文来源',
               	    type:'pie',
               	    radius : '55%',
                    center: ['50%', '60%'],
                     data:[
                       {value:335, name:'直接访问'},
                       {value:310, name:'邮件营销'},
                       {value:234, name:'联盟广告'},
                       {value:135, name:'视频广告'},
                       {value:1548, name:'搜索引擎'}
                        ]
               	    
               }]
            };  
	   myChart.setOption(option);
			
		</script>
	</body>
</html>

仪表图:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<script type="text/javascript" src="../js/echarts.min.js" ></script>
		<title></title>
	</head>
	<body>
		<div id ="main" style="width:900px;height: 600px;"></div>
		<script type="text/javascript">
			var myChart = echarts.init(document.getElementById('main'));
			var option = {
				tooltip:{
					formatter:"{a} <br/> {b}:{c}%"
				},
				toolbx:{
					 feature: {
                      restore: {},
                      saveAsImage: {}
                     }
				},
				 series: [
                     {
                  name: '业务指标',
                  type: 'gauge',
                 detail: {formatter:'{value}%'},
                 data: [{value: 32, name: '完成率'}]
                 }
                ]
			};
			myChart.setOption(option)
			setInterval(function () {
            option.series[0].data[0].value = (Math.random() * 100).toFixed(2) - 0;
           myChart.setOption(option, true);
           },2000);
		</script>
	</body>
</html>

 

问题与总结:

  1. 基本的工具栏:saveAsImage:保存图片,restore:还原;dataView:数据视图,dataZoom:

 Zoom是区域缩放,back是区域还原;magicType:是图形的切换。

  1. tooltip是提示框;axis是用于折线,柱状图的提示框。Item适用于的饼图等提示框
  2. 利用markLine和markPoint记性标记最大最小平均值。Arrow,pin等可用来表示图标的方向上下。
  3. 出现错误:主要与漏写符号,在多折线提示内容时候,提示框无法显示最大值,平均值等。即在鼠标滑过最大值处时候,没有显示该最大值得内容。原因:ecahrts.min.js的版本高,采用V3.x版本。
  4. 饼图中formatter:"<a><br/>{b}: {c}({d}%)",用来显示提示框的内容。也可显示其他形状的图形。多折线时候可以进行相关的{a0},{b0},{c0},{d0}区分。

legend: {orient: 'vertical',来显示图标的排列方式。

 

猜你喜欢

转载自blog.csdn.net/m0_37727198/article/details/81318089