使用百度的echarts的demo时出现了中文乱码问题
1.前端页面编码格式问题
使用了两个meta标签
<meta charset="utf-8">
<meta name="content-type" content="text/html; charset=utf-8">
将一行删掉解决了显性的问题。。但是工具栏却出现了问题
<meta name="content-type" content="text/html; charset=utf-8">
经过分析后发现,工具栏应该是通过js引入的,通过设置js的编码格式即可解决编码问题
<script src="js/echarts.min.js" charset="utf-8"></script>
2.数据(json)存储格式
出错的另一问题就是传输过来的数据就形成了乱码,因此读取的data.json(举个例子)本身需要以utf-8的形式存储。
这点记事本就非常坑,直接使用记事本保存默认的格式并不是utf-8,因此读取的时候会产生乱码,建议创建文件之后使用Sublime或者Notepad++打开后设置文件编码为utf-8。
下面附上demo的属性:
option = {
title : {
text: '未来一周气温变化',
subtext: '纯属虚构'
},
tooltip : {
trigger: 'axis'
},
legend: {
data:['最高气温','最低气温']
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType : {show: true, type: ['line', 'bar']},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
xAxis : [
{
type : 'category',
boundaryGap : false,
data : ['周一','周二','周三','周四','周五','周六','周日']
}
],
yAxis : [
{
type : 'value',
axisLabel : {
formatter: '{value} °C'
}
}
],
series : [
{
name:'最高气温',
type:'line',
data:[11, 11, 15, 13, 12, 13, 10],
markPoint : {
data : [
{type : 'max', name: '最大值'},
{type : 'min', name: '最小值'}
]
},
markLine : {
data : [
{type : 'average', name: '平均值'}
]
}
},
{
name:'最低气温',
type:'line',
data:[1, -2, 2, 5, 3, 2, 0],
markPoint : {
data : [
{name : '周最低', value : -2, xAxis: 1, yAxis: -1.5}
]
},
markLine : {
data : [
{type : 'average', name : '平均值'}
]
}
}
]
};