pyecharts
根据目的并运用常识选择最有效的图形来传达要点。
1 如果要说明空间关系,则地图或照片可能是最佳选择。
2 如果要说明比例,饼状图或条形图是首选。
3 如果要说明两个变量之间的关系,可尝试折线图或散点图。
地图
做云南省地图,各地区名称用拼音标注,根据各地游客人数分段染色。
from pyecharts.charts import Map # 注意这里与老版本pyecharts调用的区别
from pyecharts import options as optsNM = {'昆明市' : 'Kunming','曲靖市' : 'Qujing','玉溪市' : 'Yuxi','保山市' : 'Baoshan','昭通市' : 'Zhaotong','丽江市' : 'Lijiang','普洱市' : "Pu'er",'临沧市' : 'Lincang','楚雄彝族自治州' : 'Chuxiong','红河哈尼族彝族自治州':'Honghe','文山壮族苗族自治州':'Wenshan','西双版纳傣族自治州':'Xishuangbanna','大理白族自治州':'Dali','德宏傣族景颇族自治州':'Dehong','怒江傈僳族自治州':'Nujiang','迪庆藏族自治州':'Diqing',
}# 1.准备数据
data = [['Kunming',159.1123 ],['Qujing', 39.2356],['Yuxi', 42.9022],['Baoshan', 29.6077],['Zhaotong', 38.2113],['Lijiang', 45.2388],["Pu'er", 34.7581],['Lincang', 24.8811],['Chuxiong', 44.5476],['Honghe', 56.6267],['Wenshan', 29.1747],['Xishuangbanna', 39.1428],['Dali', 46.0627],['Dehong', 24.6942],['Nujiang', 4.0194],['Diqing', 23.202]]# 2.创建地图对象
map1 = Map()# 3.关联数据
map1.add('2018云南旅游人数',data,'云南',zoom=1, # 数字>1,地图就会放大相应倍数,反之亦然is_map_symbol_show=False, # is_map_symobol_show 是否显示地图标记,默认 True。去除小红点name_map=NM,)# 4.设置
map1.set_global_opts(
# 设置颜色块标记范围visualmap_opts=opts.VisualMapOpts(max_=200,is_piecewise=True, # is_piecewise连续型or分段型pos_bottom=345, # 图例位置上浮
# 自定义区间范围pieces=[{"max": 10, "min": 0, "label": "<10","color":"#83AF9B"},{"max": 30, "min": 10, "label": "10-29","color":"#C8C8A9"},{"max": 50, "min": 30, "label": "30-49","color":"#F9CDAD"},{"max": 100, "min": 50, "label": "50-99","color":"#FC9D9A"},{"max": 9999, "min": 100, "label": ">=100", "color":"#FE4365"}],textstyle_opts=opts.TextStyleOpts(color='black',font_size=14,font_family = 'Times New Roman',),),# 隐藏顶部的数据导航显示legend_opts=opts.LegendOpts(is_show=False),
# 标题title_opts=opts.TitleOpts(title_textstyle_opts=opts.TextStyleOpts(color='black',font_size=16,font_weight = 'normal',font_family = 'Times New Roman',),title='Domestic tourists in 2018\n(million person-times)'),)map1.set_series_opts(
# label格式设置label_opts=opts.LabelOpts(# 是否显示区域名称,默认显示。
# is_show=False,# position 标签的位置 可选 'top','left','right','bottom','inside','insideLeft','insideRight'.....position='inside',# font_size 文字的字体大小font_size=14,# color 文字的颜色color= '#42426F',# font_style 文字字体的风格,可选 'normal','italic','oblique'
# font_style = 'italic' , #斜体# font_weight 文字字体的粗细 'normal','bold','bolder','lighter'font_weight = 'bolder',# font_family 字体 'Arial', 'Courier New', 'Microsoft YaHei(微软雅黑)' ....font_family = 'Times New Roman',# rotate 标签旋转 从 -90 度到 90 度。正值是逆时针rotate = '45',# margin 刻度标签与轴线之间的距离margin = 20,# horizontal_align 文字水平对齐方式,默认自动。可选:'left','center','right'horizontal_align = 'center',# vertical_align 文字垂直对齐方式,默认自动。可选:'top','middle','bottom'vertical_align = None,),
)# 5.渲染数据
# 网页显示
map1.render('地图.html')
# 在notebook中显示
map1.render_notebook()
在jupyter中的输出结果:
pyecharts
根据目的并运用常识选择最有效的图形来传达要点。
1 如果要说明空间关系,则地图或照片可能是最佳选择。
2 如果要说明比例,饼状图或条形图是首选。
3 如果要说明两个变量之间的关系,可尝试折线图或散点图。
地图
做云南省地图,各地区名称用拼音标注,根据各地游客人数分段染色。
from pyecharts.charts import Map # 注意这里与老版本pyecharts调用的区别
from pyecharts import options as optsNM = {'昆明市' : 'Kunming','曲靖市' : 'Qujing','玉溪市' : 'Yuxi','保山市' : 'Baoshan','昭通市' : 'Zhaotong','丽江市' : 'Lijiang','普洱市' : "Pu'er",'临沧市' : 'Lincang','楚雄彝族自治州' : 'Chuxiong','红河哈尼族彝族自治州':'Honghe','文山壮族苗族自治州':'Wenshan','西双版纳傣族自治州':'Xishuangbanna','大理白族自治州':'Dali','德宏傣族景颇族自治州':'Dehong','怒江傈僳族自治州':'Nujiang','迪庆藏族自治州':'Diqing',
}# 1.准备数据
data = [['Kunming',159.1123 ],['Qujing', 39.2356],['Yuxi', 42.9022],['Baoshan', 29.6077],['Zhaotong', 38.2113],['Lijiang', 45.2388],["Pu'er", 34.7581],['Lincang', 24.8811],['Chuxiong', 44.5476],['Honghe', 56.6267],['Wenshan', 29.1747],['Xishuangbanna', 39.1428],['Dali', 46.0627],['Dehong', 24.6942],['Nujiang', 4.0194],['Diqing', 23.202]]# 2.创建地图对象
map1 = Map()# 3.关联数据
map1.add('2018云南旅游人数',data,'云南',zoom=1, # 数字>1,地图就会放大相应倍数,反之亦然is_map_symbol_show=False, # is_map_symobol_show 是否显示地图标记,默认 True。去除小红点name_map=NM,)# 4.设置
map1.set_global_opts(
# 设置颜色块标记范围visualmap_opts=opts.VisualMapOpts(max_=200,is_piecewise=True, # is_piecewise连续型or分段型pos_bottom=345, # 图例位置上浮
# 自定义区间范围pieces=[{"max": 10, "min": 0, "label": "<10","color":"#83AF9B"},{"max": 30, "min": 10, "label": "10-29","color":"#C8C8A9"},{"max": 50, "min": 30, "label": "30-49","color":"#F9CDAD"},{"max": 100, "min": 50, "label": "50-99","color":"#FC9D9A"},{"max": 9999, "min": 100, "label": ">=100", "color":"#FE4365"}],textstyle_opts=opts.TextStyleOpts(color='black',font_size=14,font_family = 'Times New Roman',),),# 隐藏顶部的数据导航显示legend_opts=opts.LegendOpts(is_show=False),
# 标题title_opts=opts.TitleOpts(title_textstyle_opts=opts.TextStyleOpts(color='black',font_size=16,font_weight = 'normal',font_family = 'Times New Roman',),title='Domestic tourists in 2018\n(million person-times)'),)map1.set_series_opts(
# label格式设置label_opts=opts.LabelOpts(# 是否显示区域名称,默认显示。
# is_show=False,# position 标签的位置 可选 'top','left','right','bottom','inside','insideLeft','insideRight'.....position='inside',# font_size 文字的字体大小font_size=14,# color 文字的颜色color= '#42426F',# font_style 文字字体的风格,可选 'normal','italic','oblique'
# font_style = 'italic' , #斜体# font_weight 文字字体的粗细 'normal','bold','bolder','lighter'font_weight = 'bolder',# font_family 字体 'Arial', 'Courier New', 'Microsoft YaHei(微软雅黑)' ....font_family = 'Times New Roman',# rotate 标签旋转 从 -90 度到 90 度。正值是逆时针rotate = '45',# margin 刻度标签与轴线之间的距离margin = 20,# horizontal_align 文字水平对齐方式,默认自动。可选:'left','center','right'horizontal_align = 'center',# vertical_align 文字垂直对齐方式,默认自动。可选:'top','middle','bottom'vertical_align = None,),
)# 5.渲染数据
# 网页显示
map1.render('地图.html')
# 在notebook中显示
map1.render_notebook()
在jupyter中的输出结果: