Flask + pyecharts显示Geo地理位置图时候遇到的问题

  最近本人在使用Flask+pyecharts实现数据可视化,总结以下我遇到的问题。

  首先,我的需求是,有一系列城市的名称以及城市对应的参数,然后要在地图上将数据显示出来。我的设计是使用Flask作为后台,ajax请求数据,在pyecharts官网(https://pyecharts.org/#/)上有相关教程。一看,哎,还挺简单的,然后我就开始了我的开发。

  前端代码

   flask后台

  

 

  这里用的是官方给出的geo的例子,并不是我真实的项目。

   

 

   运行之后,嗯?怎么没地图的?后来知道是地图没有加载出来,需要加上一个script才可以。

  

<script type="text/javascript" src="https://assets.pyecharts.org/assets/maps/china.js"></script>
加上这一句后,就可以成功显示地图了。

   地图是出来了,但是我又出现了另一个问题,当我将鼠标放在点上的时候,显示的是一串js代码。

  

  在我观察pyecharts直接生成的html发现,它自己生成的页面是有一段js代码的,但是用ajax请求的时候,返回的数据并没有这一段js代码,所以直接将鼠标放上去的时候,直接i就显示了js源码。

  这个问题但现在还没解决,也想过使用iframe去显示,但是还是希望直接使用ajax。如果大家有解决的方法,可以告诉我一下,谢谢,太卑微了,留下了不学无术的眼泪。

  所以我又换了另一种方法,改用map。

  geo是直接将坐标显示出来,map显示中国地图的话,数据只能是省和直辖市,并且是要广东、西藏这种样才行,广东省、西藏自治区这样是显示不了的。所以我从网上找了中国省和城市的数据,并且改成了省为键,城市为值的字典,将城市转换为省。使用map显示了地图。

  

 

   最后附上中国省市的数据。

{"河北": ["石家庄市", "邯郸市", "唐山市", "保定市", "秦皇岛市", "邢台市", "张家口市", "承德市", "沧州市", "廊坊市", "衡水市", "辛集市", "晋州市", "新乐市", "遵化市", "迁安市", "霸州市", "三河市", "定州市", "涿州市", "安国市", "高碑店市", "泊头市", "任丘市", "黄骅市", "河间市", "冀州市", "深州市", "南宫市", "沙河市", "武安市"], "山西": ["太原市", "大同市", "朔州市", "阳泉市", "长治市", "晋城市", "忻州市", "吕梁市", "晋中市", "临汾市", "运城市", "古交市", "潞城市", "高平市", "原平市", "孝义市", "汾阳市", "介休市", "侯马市", "霍州市", "永济市", "河津市"], "内蒙古": ["呼和浩特市", "包头市", "乌海市", "赤峰市", "呼伦贝尔市", "通辽市", "乌兰察布市", "鄂尔多斯市", "巴彦淖尔市", "满洲里市", "扎兰屯市", "牙克石市", "根河市", "额尔古纳市", "乌兰浩特市", "阿尔山市", "霍林郭勒市", "锡林浩特市", "二连浩特市", "丰镇市"], "辽宁": ["沈阳市", "大连市", "朝阳市", "阜新市", "铁岭市", "抚顺市", "本溪市", "辽阳市", "鞍山市", "丹东市", "营口市", "盘锦市", "锦州市", "葫芦岛市", "新民市", "瓦房店市", "庄河市", "北票市", "凌源市", "调兵山市", "开原市", "灯塔市", "海城市", "凤城市", "东港市", "大石桥市", "盖州市", "凌海市", "北镇市", "兴城市"], "吉林": ["长春市", "吉林市", "白城市", "松原市", "四平市", "辽源市", "通化市", "白山市", "德惠市", "榆树市", "磐石市", "蛟河市", "桦甸市", "舒兰市", "洮南市", "大安市", "双辽市", "公主岭市", "梅河口市", "集安市", "临江市", "延吉市", "图们市", "敦化市", "珲春市", "龙井市", "和龙市", "扶余市"], "黑龙江": ["哈尔滨市", "齐齐哈尔市", "黑河市", "大庆市", "伊春市", "鹤岗市", "佳木斯市", "双鸭山市", "七台河市", "鸡西市", "牡丹江市", "绥化市", "尚志市", "五常市", "讷河市", "北安市", "五大连池市", "铁力市", "同江市", "富锦市", "虎林市", "密山市", "绥芬河市", "海林市", "宁安市", "安达市", "肇东市", "海伦市", "穆棱市", "东宁市", "抚远市"], "江苏": ["南京市", "徐州市", "连云港市", "宿迁市", "淮安市", "盐城市", "扬州市", "泰州市", "南通市", "镇江市", "常州市", "无锡市", "苏州市", "常熟市", "张家港市", "太仓市", "昆山市", "江阴市", "宜兴市", "溧阳市", "扬中市", "句容市", "丹阳市", "如皋市", "海门市", "启东市", "高邮市", "仪征市", "兴化市", "泰兴市", "靖江市", "东台市", "邳州市", "新沂市"], "浙江": ["杭州市", "宁波市", "湖州市", "嘉兴市", "舟山市", "绍兴市", "衢州市", "金华市", "台州市", "温州市", "丽水市", "临安市", "建德市", "慈溪市", "余姚市", "平湖市", "海宁市", "桐乡市", "诸暨市", "嵊州市", "江山市", "兰溪市", "永康市", "义乌市", "东阳市", "临海市", "温岭市", "瑞安市", "乐清市", "龙泉市"], "安徽": ["合肥市", "芜湖市", "蚌埠市", "淮南市", "马鞍山市", "淮北市", "铜陵市", "安庆市", "黄山市", "滁州市", "阜阳市", "宿州市", "六安市", "亳州市", "池州市", "宣城市", "巢湖市", "桐城市", "天长市", "明光市", "界首市", "宁国市"], "福建": ["厦门市", "福州市", "南平市", "三明市", "莆田市", "泉州市", "漳州市", "龙岩市", "宁德市", "福清市", "长乐市", "邵武市", "武夷山市", "建瓯市", "永安市", "石狮市", "晋江市", "南安市", "龙海市", "漳平市", "福安市", "福鼎市"], "江西": ["南昌市", "九江市", "景德镇市", "鹰潭市", "新余市", "萍乡市", "赣州市", "上饶市", "抚州市", "宜春市", "吉安市", "瑞昌市", "共青城市", "乐平市", "瑞金市", "德兴市", "丰城市", "樟树市", "高安市", "井冈山市", "贵溪市"], "山东": ["济南市", "青岛市", "聊城市", "德州市", "东营市", "淄博市", "潍坊市", "烟台市", "威海市", "日照市", "临沂市", "枣庄市", "济宁市", "泰安市", "莱芜市", "滨州市", "菏泽市", "胶州市", "即墨市", "平度市", "莱西市", "临清市", "乐陵市", "禹城市", "安丘市", "昌邑市", "高密市", "青州市", "诸城市", "寿光市", "栖霞市", "海阳市", "龙口市", "莱阳市", "莱州市", "蓬莱市", "招远市", "荣成市", "乳山市", "滕州市", "曲阜市", "邹城市", "新泰市", "肥城市"], "河南": ["郑州市", "开封市", "洛阳市", "平顶山市", "安阳市", "鹤壁市", "新乡市", "焦作市", "濮阳市", "许昌市", "漯河市", "三门峡市", "南阳市", "商丘市", "周口市", "驻马店市", "信阳市", "荥阳市", "新郑市", "登封市", "新密市", "偃师市", "孟州市", "沁阳市", "卫辉市", "辉县市", "林州市", "禹州市", "长葛市", "舞钢市", "义马市", "灵宝市", "项城市", "巩义市", "邓州市", "永城市", "汝州市", "济源市"], "湖北": ["武汉市", "十堰市", "襄阳市", "荆门市", "孝感市", "黄冈市", "鄂州市", "黄石市", "咸宁市", "荆州市", "宜昌市", "随州市", "丹江口市", "老河口市", "枣阳市", "宜城市", "钟祥市", "汉川市", "应城市", "安陆市", "广水市", "麻城市", "武穴市", "大冶市", "赤壁市", "石首市", "洪湖市", "松滋市", "宜都市", "枝江市", "当阳市", "恩施市", "利川市", "仙桃市", "天门市", "潜江市"], "湖南": ["长沙市", "衡阳市", "张家界市", "常德市", "益阳市", "岳阳市", "株洲市", "湘潭市", "郴州市", "永州市", "邵阳市", "怀化市", "娄底市", "耒阳市", "常宁市", "浏阳市", "津市市", "沅江市", "汨罗市", "临湘市", "醴陵市", "湘乡市", "韶山市", "资兴市", "武冈市", "洪江市", "冷水江市", "涟源市", "吉首市"], "广东": ["广州市", "深圳市", "清远市", "韶关市", "河源市", "梅州市", "潮州市", "汕头市", "揭阳市", "汕尾市", "惠州市", "东莞市", "珠海市", "中山市", "江门市", "佛山市", "肇庆市", "云浮市", "阳江市", "茂名市", "湛江市", "英德市", "连州市", "乐昌市", "南雄市", "兴宁市", "普宁市", "陆丰市", "恩平市", "台山市", "开平市", "鹤山市", "四会市", "罗定市", "阳春市", "化州市", "信宜市", "高州市", "吴川市", "廉江市", "雷州市"], "广西壮族自治区": ["南宁市", "桂林市", "柳州市", "梧州市", "贵港市", "玉林市", "钦州市", "北海市", "防城港市", "崇左市", "百色市", "河池市", "来宾市", "贺州市", "岑溪市", "桂平市", "北流市", "东兴市", "凭祥市", "宜州市", "合山市", "靖西市"], "海南": ["海口市", "三亚市", "三沙市", "儋州市", "文昌市", "琼海市", "万宁市", "东方市", "五指山市"], "四川": ["成都市", "广元市", "绵阳市", "德阳市", "南充市", "广安市", "遂宁市", "内江市", "乐山市", "自贡市", "泸州市", "宜宾市", "攀枝花市", "巴中市", "达州市", "资阳市", "眉山市", "雅安市", "崇州市", "邛崃市", "都江堰市", "彭州市", "江油市", "什邡市", "广汉市", "绵竹市", "阆中市", "华蓥市", "峨眉山市", "万源市", "简阳市", "西昌市", "康定市", "马尔康市"], "贵州": ["贵阳市", "六盘水市", "遵义市", "安顺市", "毕节市", "铜仁市", "清镇市", "赤水市", "仁怀市", "凯里市", "都匀市", "兴义市", "福泉市"], "云南": ["昆明市", "曲靖市", "玉溪市", "丽江市", "昭通市", "普洱市", "临沧市", "保山市", "安宁市", "宣威市", "芒市", "瑞丽市", "大理市", "楚雄市", "个旧市", "开远市", "蒙自市", "弥勒市", "景洪市", "文山市", "香格里拉市", "腾冲市"], "陕西": ["西安市", "延安市", "铜川市", "渭南市", "咸阳市", "宝鸡市", "汉中市", "榆林市", "商洛市", "安康市", "韩城", "华阴", "兴平"], "甘肃": ["兰州市", "嘉峪关市", "金昌市", "白银市", "天水市", "酒泉市", "张掖市", "武威市", "庆阳市", "平凉市", "定西市", "陇南市", "玉门市", "敦煌市", "临夏市", "合作市"], "青海": ["西宁市", "海东市", "格尔木市", "德令哈市", "玉树市"], "西藏": ["拉萨市", "日喀则市", "昌都市", "林芝市", "山南市"], "宁夏": ["银川市", "石嘴山市", "吴忠市", "中卫市", "固原市", "灵武市", "青铜峡市"], "台湾": ["台北市", "新北市", "桃园市", "台中市", "台南市", "高雄市", "基隆市", "新竹市", "嘉义市"], "北京": ["北京市"], "天津": ["天津市"], "上海": ["上海市"], "重庆": ["重庆市"], "香港": ["香港"], "澳门": ["澳门特别行政区"], "新疆": ["乌鲁木齐市", "克拉玛依市", "吐鲁番市", "哈密市", "喀什市", "阿克苏市", "和田市", "阿图什市", "阿拉山口市", "博乐市", "昌吉市", "阜康市", "库尔勒市", "伊宁市", "奎屯市", "塔城市", "乌苏市", "阿勒泰市", "霍尔果斯市", "石河子市", "阿拉尔市", "图木舒克市", "五家渠市", "北屯市", "铁门关市", "双河市", "可克达拉市", "昆玉市"]}

 

posted @ 2020-03-26 14:30  一个小哥哥  阅读(1930)  评论(2编辑  收藏  举报