<script src="./js/jquery-3.4.1.min.js">script>
<script src="./js/echarts.min.js">script>
<div id="weather" class="col-lg-7 col-md-12" style="height:400px">div>
2.初始化图表
// 初始化天气折线图
var weather = echarts.init($('#weather').get(0));
option = {
title: {
text: '未来一周气温',
subtext: ''
},
tooltip: {
trigger: 'axis'
},
legend: {
data: ['最高气温', '最低气温']
},
xAxis: {
type: 'category',
boundaryGap: false,
data: []
},
yAxis: {
scale:true, //纵坐标起始点根据最低值变化
type: 'value',
axisLabel: {
formatter: '{value} °C'
}
},
series: [{
name: '最高气温',
type: 'line',
data: [],
markPoint: {
data: [{
type: 'max',
name: '最大值'
}
]
},
markLine: {
data: [{
type: 'average',
name: '平均值'
}]
}
},
{
name: '最低气温',
type: 'line',
data: [],
markPoint: {
data: [{
type: 'min',
name: '最小值'
}]
},
markLine: {
data: [{
type: 'average',
name: '平均值'
},
]
}
}
]
};
weather.setOption(option)
// 获取天气信息
$.get("https://www.tianqiapi.com/api/?version=v1", { //天气API
city: city?city:''
},
function (res) {
//显示当前城市
option.title.subtext ='当前城市:' +res.city
//给横坐标复赋值
option.xAxis.data = [res.data[0].day, res.data[1].day, res.data[2].day, res.data[3].day, res.data[4]
.day, res.data[5].day, res.data[6].day
]
//由于温度返回的是xx℃ 而我们只需要数字 所以用parseInt截取数字
option.series[0].data = [parseInt(res.data[0].tem1), parseInt(res.data[1].tem1), parseInt(res.data[2]
.tem1), parseInt(res.data[3].tem1), parseInt(res.data[4].tem1), parseInt(res.data[5]
.tem1), parseInt(res.data[6].tem1)]
option.series[1].data = [parseInt(res.data[0].tem2), parseInt(res.data[1].tem2),
parseInt(res.data[2]
.tem2), parseInt(res.data[3].tem2), parseInt(res.data[4].tem2), parseInt(res.data[5]
.tem2), parseInt(res.data[6].tem2)
]
weather.setOption(option); // 使用刚指定的配置项和数据显示图表。
},
);