Echarts
官网地址
访问以下界面,可以直接打开官网。
https://echarts.apache.org/zh/index.html
Echarts的特性
特性名称 | 描述 |
---|---|
丰富的图表类型 | 提供开箱即用的 20 多种图表和十几种组件,并且支持各种图表以及组件的任意组合。 |
强劲的渲染引擎 | Canvas、SVG 双引擎一键切换,增量渲染、流加载等技术实现千万级数据的流畅交互。 |
专业的数据分析 | 通过数据集管理数据,支持数据过滤、聚类、回归,帮助实现同一份数据的多维度分析。 |
优雅的可视化数据 | 默认设计遵从可视化原则,支持响应式设计,并且提供了灵活的配置项方便开发者定制。 |
健康的开源社区 | 活跃的社区用户保证了项目的健康发展,也贡献了丰富的第三方插件满足不同场景的需求。 |
友好的无障碍访问 | 智能生成的图表描述和贴花图案,帮助视力障碍人士了解图表内容,读懂图表背后的故事。 |
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IF3zWwYQ-1670678741966)(C:\Users\Skevin\Desktop\12月10日试讲材料\Echarts的使用.assets\image-20221209205616715.png)]
Echarts的应用场景
科研项目、产品、学术论文、技术报告、新闻报告、教育、专利以及其他相关资料
- 主要的使用场景(大数据可视化)
Echarts的使用方法
- 进入以下的界面打开文件
https://www.jsdelivr.com/package/npm/echarts
- 选中文件进行下载
- 创建echarts文件
- 引入echarts.js
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>echarts插件</title>
</head>
<body>
<!-- 引入echarts.js文件 -->
<script src="echarts.js"></script>
</body>
</html>
折线图
<div id="main"></div>
<!-- 引入echarts.js文件 -->
<script src="echarts.js"></script>
<script>
var chartDom = document.getElementById('main');
var myChart = echarts.init(chartDom);
var option;
option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [
{
data: [150, 230, 224, 218, 135, 147, 260],
type: 'line'
}
]
};
option && myChart.setOption(option);
</script>
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AFTu1GTe-1670678741974)(Echarts的使用.assets/image-20221209214210296.png)]
柱状图
option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [
{
data: [120, 200, 150, 80, 70, 110, 130],
type: 'bar',
showBackground: true,
backgroundStyle: {
color: 'rgba(180, 180, 180, 0.2)'
}
}
]
};
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G6doHWuX-1670678741976)(Echarts的使用.assets/image-20221209214119567.png)]
饼图
option = {
title: {
text: 'Referer of a Website',
subtext: 'Fake Data',
left: 'center'
},
tooltip: {
trigger: 'item'
},
legend: {
orient: 'vertical',
left: 'left'
},
series: [
{
name: 'Access From',
type: 'pie',
radius: '50%',
data: [
{ value: 1048, name: 'Search Engine' },
{ value: 735, name: 'Direct' },
{ value: 580, name: 'Email' },
{ value: 484, name: 'Union Ads' },
{ value: 300, name: 'Video Ads' }
],
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kx2m85cS-1670678741977)(Echarts的使用.assets/image-20221209214012042.png)]
散点图
echarts.registerTransform(ecStat.transform.clustering);
const data = [
[3.275154, 2.957587],
[-3.344465, 2.603513],
[0.355083, -3.376585],
[1.852435, 3.547351],
[-2.078973, 2.552013],
[-0.993756, -0.884433],
[2.682252, 4.007573],
[-3.087776, 2.878713],
[-1.565978, -1.256985],
[2.441611, 0.444826],
[-0.659487, 3.111284],
[-0.459601, -2.618005],
[2.17768, 2.387793],
[-2.920969, 2.917485],
[-0.028814, -4.168078],
[3.625746, 2.119041],
[-3.912363, 1.325108],
[-0.551694, -2.814223],
[2.855808, 3.483301],
[-3.594448, 2.856651],
[0.421993, -2.372646],
[1.650821, 3.407572],
[-2.082902, 3.384412],
[-0.718809, -2.492514],
[4.513623, 3.841029],
[-4.822011, 4.607049],
[-0.656297, -1.449872],
[1.919901, 4.439368],
[-3.287749, 3.918836],
[-1.576936, -2.977622],
[3.598143, 1.97597],
[-3.977329, 4.900932],
[-1.79108, -2.184517],
[3.914654, 3.559303],
[-1.910108, 4.166946],
[-1.226597, -3.317889],
[1.148946, 3.345138],
[-2.113864, 3.548172],
[0.845762, -3.589788],
[2.629062, 3.535831],
[-1.640717, 2.990517],
[-1.881012, -2.485405],
[4.606999, 3.510312],
[-4.366462, 4.023316],
[0.765015, -3.00127],
[3.121904, 2.173988],
[-4.025139, 4.65231],
[-0.559558, -3.840539],
[4.376754, 4.863579],
[-1.874308, 4.032237],
[-0.089337, -3.026809],
[3.997787, 2.518662],
[-3.082978, 2.884822],
[0.845235, -3.454465],
[1.327224, 3.358778],
[-2.889949, 3.596178],
[-0.966018, -2.839827],
[2.960769, 3.079555],
[-3.275518, 1.577068],
[0.639276, -3.41284]
];
var CLUSTER_COUNT = 6;
var DIENSIION_CLUSTER_INDEX = 2;
var COLOR_ALL = [
'#37A2DA',
'#e06343',
'#37a354',
'#b55dba',
'#b5bd48',
'#8378EA',
'#96BFFF'
];
var pieces = [];
for (var i = 0; i < CLUSTER_COUNT; i++) {
pieces.push({
value: i,
label: 'cluster ' + i,
color: COLOR_ALL[i]
});
}
option = {
dataset: [
{
source: data
},
{
transform: {
type: 'ecStat:clustering',
// print: true,
config: {
clusterCount: CLUSTER_COUNT,
outputType: 'single',
outputClusterIndexDimension: DIENSIION_CLUSTER_INDEX
}
}
}
],
tooltip: {
position: 'top'
},
visualMap: {
type: 'piecewise',
top: 'middle',
min: 0,
max: CLUSTER_COUNT,
left: 10,
splitNumber: CLUSTER_COUNT,
dimension: DIENSIION_CLUSTER_INDEX,
pieces: pieces
},
grid: {
left: 120
},
xAxis: {},
yAxis: {},
series: {
type: 'scatter',
encode: { tooltip: [0, 1] },
symbolSize: 15,
itemStyle: {
borderColor: '#555'
},
datasetIndex: 1
}
};
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DEPA0fSy-1670678741979)(Echarts的使用.assets/image-20221209213916256.png)]
总结
对于echarts的使用,我们一般采用设置不同的option来设置不同的图表,可以根据不同的图表需求在官网上进行查询。