echarts在java中使用实例 使用ajax动态加载数据
时间: 2023-08-15 10:05:49 浏览: 118
使用Echarts在Java中动态加载数据需要以下步骤:
1. 创建一个包含Echarts的HTML页面,通过Ajax请求从后台获取数据,然后渲染Echarts图表。
2. 在Java后端编写一个Controller,接收前端Ajax请求,查询数据库或者其他数据源,然后将数据以JSON格式返回给前端。
3. 在JavaScript中编写Ajax请求,获取后端返回的JSON数据,然后解析数据并渲染Echarts图表。
以下是一个简单的示例代码:
1. HTML页面
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>动态加载Echarts数据</title>
<script src="https://cdn.bootcdn.net/ajax/libs/echarts/4.9.0/echarts.min.js"></script>
</head>
<body>
<div id="chart" style="width: 600px;height:400px;"></div>
<script>
// 使用Ajax获取数据并渲染Echarts图表
function renderChart() {
$.ajax({
url: '/getData',
type: 'GET',
dataType: 'json',
success: function (data) {
var chart = echarts.init(document.getElementById('chart'));
chart.setOption({
title: {
text: '动态加载Echarts数据'
},
tooltip: {},
xAxis: {
data: data.categories
},
yAxis: {},
series: [{
name: '销量',
type: 'bar',
data: data.data
}]
});
}
});
}
// 页面加载完成后渲染Echarts图表
$(document).ready(function() {
renderChart();
});
</script>
</body>
</html>
```
2. Java后端Controller
```java
@RestController
public class ChartController {
@GetMapping("/getData")
public Map<String, Object> getData() {
// 从数据库或其他数据源查询数据
List<String> categories = Arrays.asList("衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子");
List<Integer> data = Arrays.asList(5, 20, 36, 10, 10, 20);
// 将数据以JSON格式返回给前端
Map<String, Object> result = new HashMap<>();
result.put("categories", categories);
result.put("data", data);
return result;
}
}
```
3. JavaScript中的Ajax请求
```javascript
// 使用Ajax获取数据并渲染Echarts图表
function renderChart() {
$.ajax({
url: '/getData',
type: 'GET',
dataType: 'json',
success: function (data) {
var chart = echarts.init(document.getElementById('chart'));
chart.setOption({
title: {
text: '动态加载Echarts数据'
},
tooltip: {},
xAxis: {
data: data.categories
},
yAxis: {},
series: [{
name: '销量',
type: 'bar',
data: data.data
}]
});
}
});
}
// 页面加载完成后渲染Echarts图表
$(document).ready(function() {
renderChart();
});
```
以上是一个简单的使用Echarts在Java中动态加载数据的示例代码。
阅读全文