社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Pyecharts丨极其强大的Python数据可视化模块

python • 7 年前 • 1127 次点击  


前言

昨天发了一篇关于【Matplotlib】的数据可视化文章,有一位小伙伴说可以直接使用Pyecharts,然后我就看了,发现确实,很强大,效果图也是非常的好看

安装Pyecharts

pip install Pyecharts


分享一个里面的内容

GeoLines(地理坐标系线图)

用于带有起点和终点信息的线数据的绘制,主要用于地图上的航线,路线的可视化。

GeoLines.add() 方法签名

add(name, data,
   maptype='china',
   symbol=None,
   symbol_size=12,
   border_color="#111",
   geo_normal_color="#323c48",
   geo_emphasis_color="#2a333d",
   geo_cities_coords=None,
   geo_effect_period=6,
   geo_effect_traillength=0,
   geo_effect_color='#fff',
   geo_effect_symbol='circle',
   geo_effect_symbolsize=5,
   is_geo_effect_show=True,
   is_roam=True, **kwargs)
  • name -> str
    图例名称

  • data -> [list], 包含列表的列表
    数据项,数据中,每一行是一个『数据项』,每一列属于一个『维度』。每一行包含两个或三个数据,如 ["广州", "北京"] 或 ["广州", "北京",100],则指定从广州到北京。第三个值用于表示该 line 的数值,该值可省略。

  • maptype -> str
    地图类型。 从 v0.3.2+ 起,地图已经变为扩展包,支持全国省份,全国城市,全国区县,全球国家等地图

  • symbol -> str
    线两端的标记类型,可以是一个数组分别指定两端,也可以是单个统一指定。

  • symbol_size -> int
    线两端的标记大小,可以是一个数组分别指定两端,也可以是单个统一指定。

  • border_color -> str
    地图边界颜色。默认为 '#111'

  • geo_normal_color -> str
    正常状态下地图区域的颜色。默认为 '#323c48'

  • geo_emphasis_color -> str
    高亮状态下地图区域的颜色。默认为 '#2a333d'

  • geo_cities_coords -> dict
    用户自定义地区经纬度,类似如 {'阿城': [126.58, 45.32],} 这样的字典,当用于提供了该参数时,将会覆盖原有预存的区域坐标信息。

  • geo_effect_period -> int/float
    特效动画的时间,单位为 s,默认为 6s

  • geo_effect_traillength -> float
    特效尾迹的长度。取从 0 到 1 的值,数值越大尾迹越长。默认为 0

  • geo_effect_color -> str
    特效标记的颜色。默认为 '#fff'

  • geo_effect_symbol -> str
    特效图形的标记。有 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'plane' 可选。

  • geo_effect_symbolsize -> int/list
    特效标记的大小,可以设置成诸如 10 这样单一的数字,也可以用数组分开表示高和宽,例如 [20, 10] 表示标记宽为 20,高为 10。

  • is_geo_effect_show -> bool
    是否显示特效。

  • is_roam -> bool
    是否开启鼠标缩放和平移漫游。默认为 True
    如果只想要开启缩放或者平移,可以设置成'scale'或者'move'。设置成 True 为都开启


默认效果


from pyecharts import GeoLines, Style
style = Style(
   title_top="#fff",
   title_pos = "center",
   width=1200,
   height=600,
   background_color="#404a59"
)
data_guangzhou = [
   ["广州", "上海"],
   ["广州", "北京"],
   ["广州", "南京"],
   ["广州", "重庆"],
   ["广州", "兰州"],
   ["广州", "杭州"]
]
geolines = GeoLines("GeoLines 示例", **style.init_style)
geolines.add("从广州出发", data_guangzhou, is_legend_show=False)
geolines.render()


稍加配置

from pyecharts import GeoLines, Style
style_geo = style.add(
   is_label_show=True,
   line_curve=0.2,
   line_opacity=0.6,
   legend_text_color="#eee",
   legend_pos="right",
   geo_effect_symbol="plane",
   geo_effect_symbolsize=15,
   label_color=['#a6c84c', '#ffa022', '#46bee9'],
   label_pos="right",
   label_formatter="{b}",
   label_text_color="#eee",
)
geolines = GeoLines("GeoLines 示例", **style.init_style)
geolines.add("从广州出发", data_guangzhou, **style_geo)
geolines.render()


指定数值

from pyecharts import GeoLines, Style
data_guangzhou = [
   ["广州", "上海", 10],
   ["广州", "北京", 20],
   ["广州", "南京", 30],
   ["广州", "重庆", 40],
   ["广州", "兰州", 50],
   ["广州", "杭州", 60],
]
lines = GeoLines("GeoLines 示例", **style.init_style)
lines.add(
   "从广州出发", data_guangzhou, tooltip_formatter="{a} : {c}", **style_geo
)
lines.render()


多例模式


from pyecharts import GeoLines, Style
data_beijing = [
   ["北京", "上海"],
   [ "北京", "广州"],
   ["北京", "南京"],
   ["北京", "重庆"],
   ["北京", "兰州"],
   ["北京", "杭州"]
]
geolines = GeoLines("GeoLines 示例", **style.init_style)
geolines.add("从广州出发", data_guangzhou, **style_geo)
geolines.add("从北京出发", data_beijing, **style_geo)
geolines.render()


单例模式,指定 legend_selectedmode="single"

from pyecharts import GeoLines, Style
style_geo = style.add(
   is_label_show=True,
   line_curve=0.2,
   line_opacity=0.6,
   legend_text_color="#eee",
   legend_pos="right",
   geo_effect_symbol="plane",
   geo_effect_symbolsize=15,
   label_color=['#a6c84c', '#ffa022', '#46bee9'],
   label_pos="right",
   label_formatter="{b}",
   label_text_color="#eee",
   legend_selectedmode="single", #指定单例模式
)
geolines = GeoLines("GeoLines 示例", **style.init_style)
geolines.add("从广州出发", data_guangzhou, **style_geo)
geolines.add("从北京出发", data_beijing, **style_geo)
geolines.render()


是不是很有强大,很好看?!


这只是其中的一种可视化图像,里面还有很多,比如:

  • Bar(柱状图/条形图)

  • Bar3D(3D 柱状图)

  • Boxplot(箱形图)

  • EffectScatter(带有涟漪特效动画的散点图)

  • Funnel(漏斗图)

  • Gauge(仪表盘)

  • Geo(地理坐标系)

  • GeoLines(地理坐标系线图)

  • Graph(关系图)

  • HeatMap(热力图)

  • Kline/Candlestick(K线图)

  • Line(折线/面积图)

  • Line3D(3D 折线图)

  • Liquid(水球图)

  • Map(地图)

  • Parallel(平行坐标系)

  • Pie(饼图)

  • Polar(极坐标系)

  • Radar(雷达图)

  • Sankey(桑基图)

  • Scatter(散点图)

  • Scatter3D(3D 散点图)

  • ThemeRiver(主题河流图)

  • TreeMap(矩形树图)

  • WordCloud(词云图)

具体的详细内容:http://pyecharts.org/#/

点击原文链接即可直接到达


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/KLhcBG5BU2
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/12801
 
1127 次点击