我有一个echarts_line.js,我想将后台数据传给前端,但是没传成功,希望牛人能帮忙解惑,以下是目前效果,后端设置数据+代码:
目前效果:

后端设计数据:

后端部分
@app.route('/line',methods = ['post','get'])
def get_line():
line_data = pd.read_excel('D:\桌面\更新表.xlsx', sheet_name='折线图')
print(line_data)
list_date = line_data['日期'].to_list()
list_last_month = line_data['往期'].to_list()
list_this_month = line_data['当月'].to_list()
dict_return_line = {'list_date':list_date,
'list_last_month':list_last_month,
'list_this_month':list_this_month}
return jsonify(dict_return_line)
前端部分
<div id='line' style="width: 40%;height: 74%;left: 32%;top: 25%;"></div>
<script src="../static/js/echarts-line.js"></script>
function getline(){
$.ajax({
url:"/line",
success:function(data){
option.series[0].data = data.list_last_month
option.series[1].data = data.list_this_month
option.xAxis[0].data = data.list_date
myChart.setOption(option)
},error:function(xhr,type,errorThrown){
}
})
}
js部分
var myChart = echarts.init(document.getElementById('line'));
var option;
option = {
title: {
text: '当月每日GMV数据(单位:万元)',
textStyle: {
color: '#fff'
}
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
label: {
backgroundColor: '#6a7985'
}
}
},
legend: {
data: ['同比上月', '本月'],
left:'10%',
top: '10%',
orient :'vertical',
icon: 'circle',
textStyle:{
color:'#FFF',
fontSize :20
}
},
toolbox: {
feature: {
saveAsImage: {}
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
axisLine: {
show: true
},
axisLabel: {
show: true,
color: 'white' // 设置刻度标签颜色为白色
},
data: ['1日', '2日', '3日', '4日', '5日', '6日', '7日', '8日', '9日', '10日', '11日', '12日', '13日', '14日', '15日', '16日', '17日', '18日', '19日', '20日', '21日', '22日', '23日', '24日', '25日', '26日', '27日', '28日', '29日', '30日', '31日']
}],
yAxis: [
{
type: 'value',
axisLine: {
show: true
},
axisLabel: {
show: true,
color: 'white' // 设置刻度标签颜色为白色
},
}],
series: [
{
name: '同比上月',
type: 'line',
stack: 'Total',
areaStyle: {},
emphasis: {
focus: 'series'
},
markPoint: {
symbol: 'pin',
symbolSize: 80,
data: [{type: 'max', name: '往期最大值'}],
label:{
fontsize:40,
fontWeight:'bold'
}
},
data: [120, 132, 101, 134, 90, 230, 210,40,80,120,3000,100,150,130,140,150,40,160,300,350,320,400,380,500,600,700,800,900,1200,1500,900]
},
{
name: '本月',
type: 'line',
stack: 'Total',
areaStyle: {},
emphasis: {
focus: 'series'
},
markPoint: {
symbol: 'pin',
symbolSize: 50,
data: [{type: 'max', name: '本月最大值'}],
label:{
fontsize:40,
fontWeight:'bold'
}
},
data: [220, 182, 191, 234, 290,199, 630,400,500,600]
}
]
};
option && myChart.setOption(option);