我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JavaScript可视化与Echarts详细介绍

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JavaScript可视化与Echarts详细介绍

一、可视化介绍

  • 可视化:将数据用图表展示出来,让数据更加直观、让数据特点更加突出
  • 应用场景:营销数据、生产数据、用户数据

二、可视化库介绍

常见的数据可视化库:

  • D3.js:目前 Web 端评价最高的 Javascript 可视化工具库(入手难)
  • ECharts.js:百度出品的一个开源 Javascript 数据可视化库
  • Highcharts.js:国外的前端数据可视化库,非商用免费,被许多国外大公司所使用
  • AntV:蚂蚁金服全新一代数据可视化解决方案等等
  • Highcharts 和 Echarts 就像是 Office 和 WPS 的关系

ECharts:一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表

三、Echarts

Echarts引入和使用

下载echarts(库) 引入文件到html页面中

<script class="lazy" data-src="./class="lazy" data-src/echarts.js"></script>

准备一个DOM容器

<style>
    .box {
		width: 400px;
		height: 400px;
		cursor: pointer;
	}
</style>
<div class='box'></div>

初始化一个echarts对象

var box = document.querySelector(".box")
var echarts1 = echarts.init(box)

指定配置项和数据

var option = {
	title: {
		text: 'ECharts 入门示例'
	},
	tooltip: {},
	legend: {
		data: ['销量']
	},
	xAxis: {
		data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
	},
	yAxis: {},
	series: [{
		name: '销量',
		type: 'bar',
		data: [5, 20, 36, 10, 10, 20]
	}]
}

将配置项设置给echarts实例对象

echarts1.setOption(option)

了解基础配置

title:标题组件,包含主标题和副标题

tooltip:提示框组件

legend:图例组件

series

系列列表:每个系列通过 type 决定自己的图表类型

xAxis:直角坐标系 grid 中的 x 轴

boundaryGap: 坐标轴两边留白策略 true,这时候刻度只是作为分隔线,标签和数据点都会在两个刻度之间的带(band)中间

yAxis:直角坐标系 grid 中的 y 轴

grid:直角坐标系内绘图网格

color:调色盘颜色列表

注:不要求全部记忆,只需要知道怎么在官方文档上查找学习

官方文档:Documentation - Apache ECharts

(1)示例:标题组件title

              title: {
					show: true,          //是否显示标题组件
					text: '主标题',
					link: "http://www.baidu.com",   //主标题文本超链接
					textStyle: {                   //主标题的文本样式 相当于css的
						color: "blue",
						fontWeight: "100"
					},
					subtext: "副标题",
					subtextStyle: {               //副标题的文本样式
						color: "red",
						fontWeight: "100",
						fontSize: "20px"
					},
					textAlign: "auto",         //整体(包括 text 和 subtext)的水平对齐
					textVerticalAlign: "auto", //整体(包括 text 和 subtext)的垂直对齐
					padding: [5, 10],          //标题内边距
					left: 400,                 //title 组件离容器左侧的距离
					backgroundColor: "yellow"   //标题背景色,默认透明
				},

(2)示例:工具组件toolbox

                toolbox: {
					//配置工具
					feature: {
						mytool: {    //自定义的工具名字,只能以 my 开头
							show: true,
							title: "自定义扩展方法",
							icon: "image://https://img2.baidu.com/it/u=1814268193,3619863984&fm=253&app=138&size=w931&n=0&f=JPEG&fmt=auto?sec=1658941200&t=d5f42a41eab8af5c9929fcc6f9e1eff7",
							onclick: function() {
								console.log("点击事件")
							}
						},
						saveAsImage: {
							name: "保存"
						},
						restore: {      //配置项还原
						},
						dataView: { //数据视图工具,可展现当前图表所用的数据,编辑后可动态更新
						},
						dataZoom: {},    //数据区域缩放
						magicType: {      //动态类型切换
							type: ['line', 'bar', 'stack']
						}
					}
				},

(3)示例:提示框组件tooltip

            tooltip: {
					show: true,
					trigger: "axis", //触发类型 "none"||"axis"
					showContent: false,   // 是否显示提示框浮层
					alwaysShowContent: true,  //是否永远显示提示框内容
					triggerOn: "click",         //提示框触发的条件
					backgroundColor: "gold",
					textStyle: {
						color: "white"
					},
					axisPointer: {     //是配置坐标轴指示器的快捷方式
						type: "cross",  //指示器类型 line shadow none cross
						axis: "x",      //指示器的坐标轴
						snap: true,     //坐标轴指示器是否自动吸附到点上
                        label: {        //坐标轴指示器的文本标签
							show: true,
							color: "red",
						 	formatter: ({    //文本标签文字的格式化器
						 		value
						 	}) => {
								console.log(value)
						 		return `--${value}` //value*2
						 	}
						 }
					}
				},

(4)示例:图例组件legend

legend: {
					type: "scroll",     //图例的类型 plain普通图例 scroll可滚动翻页的图例
					orient: "vertical",  //图例列表的布局朝向 vertical horizontal
					data: [{
						name: '销量1',   //图例项的名称
						icon: "circle",   //图例项的 icon
						itemStyle: {
							color: "red"
						}
					}, {
						name: '销量2',
						icon: "rect",
						itemStyle: {
							color: "red"
						}
					}, {
						name: '纯利1',
						icon: "triangle",
						textStyle: {
							color: "red",
							fontSize: "20px"
						}
					}, {
						name: '纯利2',
						icon: "path://",   //'path://' 将图标设置为任意的矢量路径
						icon: "image://url",       //通过图片链接设置为图片
						icon:  "image://https://img2.baidu.com/it/u=1814268193,3619863984&fm=253&app=138&size=w931&n=0&f=JPEG&fmt=auto?sec=1658941200&t=d5f42a41eab8af5c9929fcc6f9e1eff7"   //通过图片编码设置为图片
					  }]
				   },

(5)示例:系列列表series

              series: [{
					name: "某某系列1",
					type: 'line',
					colorBy: "series", //按系列分配调色盘中的颜色,同一系列中的所有数据都是用相同的颜色  
					symbol: "rect",     //标记的图形 设置拐点 
					cursor: "move",
					label: {
						show: true    //是否显示标签文字
					},
					endLabel: {       //折线端点的标签
						show: true
					},
					labelLine: {
						show: true,   //是否显示连接线
						smooth: true    //是否平滑
					},
					lineStyle: {       //标签的视觉引导线配置
						color: "red",
						width: 2,
						join: "miter"  //设置2个长度不为0的相连部分如何连接在一起的属性
					},
					smooth: 0.3,
					data: [420, 432, 401, 434, 190, 130, 120],
				}, {
					name: "某某系列2",
					type: 'line',
					symbol: "arrow",
					symbolSize: 10,     // 拐点大小   
					data: [860, 962, 961, 964, 1260, 1360, 1360],
				}]
			};

(6)示例:直角坐标系 grid 中的 x、y轴(类似)

 xAxis: {
     show: true;  //是否显示x轴                
     data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']   //类目数据,在类目轴
     position:'top'   //x轴的位置
     name:'坐标轴的名称'
     axisTick: {
         show: false // 去除刻度线
     },
     axisLabel: {
         color: '#4c9bfd' // 文本颜色
     },
     axisLine: {
         show: false // 去除轴线
     },
     boundaryGap: false  // 去除轴内间距
 },

(7)蓝丁格尔玫瑰图

<style>
    .box {
      width: 500px;
      height: 500px;
    }
</style>
<div class="box"></div>
<script>
    var box = document.querySelector(".box")
    var ect = echarts.init(box)
    option = {
      title: {
        text: 'Nightingale Chart',
        subtext: 'Fake Data',
        left: 'center'
      },
      tooltip: {
        trigger: 'item',
        formatter: '{a} <br/>{b} : {c} ({d}%)'
      },
      toolbox: {
        show: true,
        feature: {
          mark: {
            show: true
          },
          dataView: {
            show: true,
            readOnly: false
          },
          restore: {
            show: true
          },
          saveAsImage: {
            show: true
          }
        }
      },
      series: [{
        name: '面积模式',
        type: 'pie',
        radius: [30, 110],
        center: ['25%', '50%'],
        roseType: 'radius',
        color: ['#006cff', '#60cda0', '#ed8884', '#ff9f7f', '#0096ff', '#9fe6b8', '#32c5e9', '#1d9dff'],
        itemStyle: {
          borderRadius: 5
        },
        label: {
          show: false,
          fontSize: 10
        },
        emphasis: {
          label: {
            show: true
          }
        },
        labelLine: {
          // 连接扇形图线长
          length: 6,
          // 连接文字线长
          length2: 8
        },
        data: [{
            value: 20,
            name: '云南'
          },
          {
            value: 26,
            name: '北京'
          },
          {
            value: 24,
            name: '山东'
          },
          {
            value: 25,
            name: '河北'
          },
          {
            value: 20,
            name: '江苏'
          },
          {
            value: 25,
            name: '浙江'
          },
          {
            value: 30,
            name: '四川'
          },
          {
            value: 42,
            name: '湖北'
          }
        ]
      }, ]
    };
    ect.setOption(option)
</script>

效果图:

到此这篇关于JavaScript可视化与Echarts详细介绍的文章就介绍到这了,更多相关JavaScript可视化与Echarts内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JavaScript可视化与Echarts详细介绍

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python 绘图和可视化详细介绍

Python之绘图和可视化 1. 启用matplotlib 最常用的Pylab模式的IPython(IPython --pylab) 2. matplotlib的图像都位于Figure对象中。 可以使用plt.figure创建一个新的Fig
2022-06-04

Vue使用Echarts实现大屏可视化布局示例详细讲解

这篇文章主要介绍了Vue使用Echarts实现大屏可视化布局示例,本文通过实例代码图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-01-09

红米电视安装阿里云服务器详细介绍与步骤

红米电视是小米公司推出的一款智能电视产品,其丰富的功能和良好的性能深受消费者喜爱。然而,红米电视用户可能需要安装阿里云服务器,以便更好地使用和享受电视的功能。本文将详细介绍红米电视安装阿里云服务器的步骤和方法。正文:步骤一:确认硬件配置在安装阿里云服务器之前,需要确认红米电视的硬件配置是否满足安装阿里云服务器的要
红米电视安装阿里云服务器详细介绍与步骤
2023-12-17

JavaScript断言与类型守卫及联合声明超详细介绍

这篇文章主要介绍了JavaScript断言与类型守卫及联合声明,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
2022-11-13

编程热搜

目录