用代码实现echarts搜索图表
时间: 2023-10-24 15:14:32 浏览: 101
首先需要引入 echarts 和 echarts-gl 库,然后构建一个 div 容器用来放置图表。接着,我们可以使用 echarts 提供的 API 创建一个基础的柱状图,通过设置 tooltip、legend、xAxis、yAxis 等属性来完善图表的展示效果。最后,我们可以使用 echarts 提供的 API 中的 setOption 方法将图表的配置项传入,从而实现搜索图表的功能。
以下是一个简单的示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Echarts Search Chart</title>
<script src="https://cdn.staticfile.org/echarts/4.7.0/echarts.min.js"></script>
<script src="https://cdn.staticfile.org/echarts-gl/1.1.1/echarts-gl.min.js"></script>
</head>
<body>
<div id="chart" style="width: 600px;height:400px;"></div>
<input type="text" id="search-input" placeholder="输入搜索关键字">
<button id="search-btn">搜索</button>
<script>
// 初始化图表
var chart = echarts.init(document.getElementById('chart'));
// 配置基础的柱状图
var option = {
tooltip: {},
legend: {
data:['销量']
},
xAxis: {
data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
},
yAxis: {},
series: [{
name: '销量',
type: 'bar',
data: [5, 20, 36, 10, 10, 20]
}]
};
// 将配置项设置到图表中
chart.setOption(option);
// 搜索功能实现
var searchBtn = document.getElementById('search-btn');
searchBtn.onclick = function() {
var searchInput = document.getElementById('search-input');
var keyword = searchInput.value;
var data = option.series[0].data;
var newData = [];
var xAxisData = [];
// 遍历数据,将包含关键字的数据放入新的数组中
for (var i = 0; i < data.length; i++) {
if (option.xAxis.data[i].indexOf(keyword) >= 0) {
newData.push(data[i]);
xAxisData.push(option.xAxis.data[i]);
}
}
// 更新图表数据
chart.setOption({
xAxis: {
data: xAxisData
},
series: [{
data: newData
}]
});
};
</script>
</body>
</html>
```
在这个示例中,我们创建了一个基础的柱状图,并且添加了一个搜索框和一个搜索按钮。当用户输入关键字并点击搜索按钮时,我们通过遍历数据,将包含关键字的数据放入新的数组中,并且更新图表的数据和 x 轴的数据,从而实现搜索图表的功能。
阅读全文