在 ECharts 中,“导入数据源”本质上就是:准备好数据(数组 / 对象 / JSON)→ 传给 ECharts 的 option。下面按常见场景给你说明。
<div id="main" style="width:600px;height:400px;"></div>
<script src="https://cdn.jsdelivr.net/npm/echarts@5/dist/echarts.min.js"></script>
<script>
const chart = echarts.init(document.getElementById('main'));
const option = {
xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed'] },
yAxis: { type: 'value' },
series: [{
type: 'bar',
data: [120, 200, 150]
}]
};
chart.setOption(option);
</script>
✅ 适合:写死的数据、示例
{
"categories": ["Mon", "Tue", "Wed"],
"values": [120, 200, 150]
}
<script>
fetch('data.json')
.then(res => res.json())
.then(data => {
chart.setOption({
xAxis: { type: 'category', data: data.categories },
yAxis: { type: 'value' },
series: [{
type: 'bar',
data: data.values
}]
});
});
</script>
✅ 适合:静态数据、前后端分离
fetch('https://api.example.com/chart-data')
.then(res => res.json())
.then(res => {
chart.setOption({
xAxis: { type: 'category', data: res.xData },
yAxis: { type: 'value' },
series: [{ type: 'line', data: res.yData }]
});
});
✅ 适合:动态数据、实时更新
<script src="https://cdn.jsdelivr.net/npm/papaparse@5/papaparse.min.js"></script>
Papa.parse('data.csv', {
download: true,
header: true,
complete: function(results) {
const rows = results.data;
chart.setOption({
xAxis: { type: 'category', data: rows.map(r => r.date) },
series: [{ type: 'bar', data: rows.map(r => r.value) }]
});
}
});
import * as echarts from 'echarts'
export default {
mounted() {
const chart = echarts.init(this.$refs.chart)
chart.setOption({
series: [{ type: 'pie', data: this.chartData }]
})
},
data() {
return {
chartData: [
{ value: 1048, name: 'A' },
{ value: 735, name: 'B' }
]
}
}
}
| 数据源 | 方式 |
|---|---|
| 写死数组 | 直接写 |
| JSON 文件 | fetch |
| 后端 API | AJAX |
| Excel | 转 JSON / CSV |
| 数据库 | 后端查询后返回 |
如果你能告诉我:
我可以直接给你一套完整可运行代码。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。