This commit is contained in:
2025-09-10 20:23:42 +08:00
parent 729735f412
commit 8cc3d8131d
2 changed files with 25 additions and 13 deletions

View File

@@ -196,12 +196,20 @@ class RuYuanZaiYuanModel:
for year in years: for year in years:
# 将education_data改为student_data # 将education_data改为student_data
in_school_year_data = yunnan_in_school["student_data"]["preschool"].get(year, {}) in_school_year_data = yunnan_in_school["student_data"]["preschool"].get(year, {})
urban_data.append(in_school_year_data.get("urban", 0) / 10000) # 转换为万人
town_data.append(in_school_year_data.get("town", 0) / 10000) # 转换为万人 # 先获取原始数据
rural_data.append(in_school_year_data.get("rural", 0) / 10000) # 转换为万人 urban_val = in_school_year_data.get("urban", 0)
# 计算总和作为总在园数 town_val = in_school_year_data.get("town", 0)
calculated_total = in_school_year_data.get("urban", 0) + in_school_year_data.get("town", 0) + in_school_year_data.get("rural", 0) rural_val = in_school_year_data.get("rural", 0)
total_in_school.append(calculated_total / 10000) # 转换为万人
# 转换为万人并添加到各自列表
urban_data.append(urban_val / 10000) # 转换为万人
town_data.append(town_val / 10000) # 转换为万人
rural_data.append(rural_val / 10000) # 转换为万人
# 计算总和并转换为万人
calculated_total = (urban_val + town_val + rural_val) / 10000 # 先计算总和再转换为万人
total_in_school.append(calculated_total)
# 构建ECharts配置 # 构建ECharts配置
option = { option = {
@@ -238,8 +246,8 @@ class RuYuanZaiYuanModel:
"type": "value", "type": "value",
"name": "人数", "name": "人数",
"min": 0, "min": 0,
"max": 100, "max": 200, # 将左侧Y轴最大值从100修改为200万
"interval": 20, "interval": 40, # 调整间隔为40万确保坐标轴上有5个主要刻度(0,40,80,120,160,200)
"axisLabel": { "axisLabel": {
"formatter": "{value} 万人", "formatter": "{value} 万人",
"color": "#333" "color": "#333"
@@ -251,8 +259,8 @@ class RuYuanZaiYuanModel:
"type": "value", "type": "value",
"name": "总在园数", "name": "总在园数",
"min": 0, "min": 0,
"max": 140, "max": 320, # 将右侧Y轴最大值从160扩大一倍到320万
"interval": 20, "interval": 60, # 调整间隔为60万
"position": "right", "position": "right",
"nameLocation": "end", "nameLocation": "end",
"nameGap": 30, "nameGap": 30,
@@ -307,12 +315,16 @@ class RuYuanZaiYuanModel:
"lineStyle": {"color": "#ee6666", "width": 3}, "lineStyle": {"color": "#ee6666", "width": 3},
"symbol": "circle", "symbol": "circle",
"symbolSize": 8, "symbolSize": 8,
"itemStyle": {"color": "#ee6666"} "itemStyle": {"color": "#ee6666"},
"emphasis": {
"focus": "series"
},
"z": 10 # 确保折线图显示在最上层
} }
], ],
"grid": { "grid": {
"left": "3%", "left": "3%",
"right": "8%", "right": "15%", # 稍微增加右侧边距确保Y轴标签不被截断
"bottom": "3%", "bottom": "3%",
"containLabel": True "containLabel": True
} }