'commit'
This commit is contained in:
@@ -72,8 +72,8 @@ def generate_population_chart_config(year="2024"):
|
||||
population_data = load_population_data()
|
||||
|
||||
# 筛选出州市级数据(排除县级数据)
|
||||
# 正确的格式是 9 位数字,且以 000 结尾但不以 000000 结尾
|
||||
cities = [item for item in population_data if len(item["area_code"]) == 9 and item["area_code"].endswith("000") and not item["area_code"].endswith("000000")]
|
||||
# 正确的格式是9位数字,以000结尾且第5-6位为00(表示州市级)
|
||||
cities = [item for item in population_data if len(item["area_code"]) == 9 and item["area_code"].endswith("000") and item["area_code"][4:6] == "00"]
|
||||
|
||||
# 提取城市名称和人口数据
|
||||
city_names = [city["area_name"] for city in cities]
|
||||
@@ -89,12 +89,19 @@ def generate_population_chart_config(year="2024"):
|
||||
.add_yaxis("城镇人口", urban_populations, stack="stack1")
|
||||
.add_yaxis("农村人口", rural_populations, stack="stack1")
|
||||
.set_global_opts(
|
||||
title_opts=opts.TitleOpts(title=f"云南省各州市人口分布图({year}年)"),
|
||||
title_opts=opts.TitleOpts(
|
||||
title=f"云南省各州市人口分布图({year}年)",
|
||||
pos_top="1%", # 调整标题位置到顶部1%
|
||||
pos_left="center"
|
||||
),
|
||||
tooltip_opts=opts.TooltipOpts(
|
||||
trigger="axis",
|
||||
axis_pointer_type="shadow"
|
||||
),
|
||||
legend_opts=opts.LegendOpts(pos_top="5%"),
|
||||
legend_opts=opts.LegendOpts(
|
||||
pos_top="8%", # 调整图例位置到标题下方
|
||||
pos_right="5%"
|
||||
),
|
||||
datazoom_opts=[opts.DataZoomOpts()],
|
||||
xaxis_opts=opts.AxisOpts(
|
||||
axislabel_opts=opts.LabelOpts(rotate=45)
|
||||
@@ -127,8 +134,8 @@ def generate_urbanization_rate_chart_config():
|
||||
population_data = load_population_data()
|
||||
|
||||
# 筛选出州市级数据(排除县级数据)
|
||||
# 正确的格式是 9 位数字,且以 000 结尾但不以 000000 结尾
|
||||
cities = [item for item in population_data if len(item["area_code"]) == 9 and item["area_code"].endswith("000") and not item["area_code"].endswith("000000")]
|
||||
# 排除省级数据(如云南省530000000)和县级数据,只保留州市级数据
|
||||
cities = [item for item in population_data if len(item["area_code"]) == 9 and item["area_code"].endswith("000") and item["area_code"][4:6] == "00" and item["area_code"][2:8] != "000000"]
|
||||
|
||||
# 提取城市名称和城镇化率数据
|
||||
city_names = [city["area_name"] for city in cities]
|
||||
@@ -147,9 +154,16 @@ def generate_urbanization_rate_chart_config():
|
||||
markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max")]))
|
||||
|
||||
line.set_global_opts(
|
||||
title_opts=opts.TitleOpts(title="云南省各州市城镇化率变化趋势"),
|
||||
title_opts=opts.TitleOpts(
|
||||
title="云南省各州市城镇化率变化趋势",
|
||||
pos_top="1%", # 调整标题位置到顶部1%
|
||||
pos_left="center"
|
||||
),
|
||||
tooltip_opts=opts.TooltipOpts(trigger="axis"),
|
||||
legend_opts=opts.LegendOpts(pos_top="5%"),
|
||||
legend_opts=opts.LegendOpts(
|
||||
pos_top="8%", # 调整图例位置到标题下方
|
||||
pos_right="5%"
|
||||
),
|
||||
datazoom_opts=[opts.DataZoomOpts()],
|
||||
xaxis_opts=opts.AxisOpts(
|
||||
axislabel_opts=opts.LabelOpts(rotate=45)
|
||||
|
Reference in New Issue
Block a user