python自学笔记之可视化神器pyecharts(三)

from pyecharts.charts import Map, Geo
from pyecharts import options as opts
from pyecharts.globals import ChartType,SymbolType, GeoType
import pandas as pd
data = pd.read_csv("TitaniclocA.csv")
home = list(data["home"])
longitude_h = list(data["longitude_h"])
latitude_h = list(data["latitude_h"])
location_h_values = list(zip(longitude_h,latitude_h))
dest = list(data["dest"])
longitude_d = list(data["longitude_d"])
latitude_d = list(data["latitude_d"])
location_d_values = list(zip(longitude_d,latitude_d))
home_dest = list(zip(home,dest))
# 利用zip()函数生成由 <元组> 组成的 <列表>,list(z)为一个个元组,最后注意要加上[]成为列表
home_data=[list(z) for z in zip(home,location_h_values)]
dest_data=[list(z) for z in zip(dest,location_d_values)]
home_dest_data = home_data + dest_data


# 添加新坐标
for i in range(len(home)):
    Geo().add_coordinate(home[i],longitude_h[i],latitude_h[i])
for i in range(len(dest)):
    Geo().add_coordinate(dest[i],longitude_d[i],latitude_d[i])
    
world=(
    Geo(init_opts=opts.InitOpts(
        width="1500px",
        height='1200px',
        page_title="泰坦尼克号home.dest流向图",
        bg_color="white"))  # 初始化配置
    # 基本框架设置 参考 pyecharts-document-Geo
    .add_schema(maptype="world",  # 地图类型
                is_roam=True,  # 开启鼠标缩放
                zoom=1,  # 当前视角比例缩放
                center=[30,-40],  # 当前视角的中心点 经纬度表示
                layout_size=500,
                itemstyle_opts=opts.ItemStyleOpts(color="#FFFFCC",border_color="#800000"))
    # 为地图添加配置
    # 标注散点
    .add(
        "",  # series name
        # 添加数据项(坐标点名称,坐标点值)
        home_dest_data,
        # type_ = "scatter",
        type_= ChartType.EFFECT_SCATTER,  # 添加图类型
        color="black",
        symbol_size = 8
    )
    # 标记流向线条
    .add(
        'Geo',  # series_name
        home_dest,
        type_=ChartType.LINES,
        is_selected=True,  # 图例
        effect_opts=opts.EffectOpts(
            symbol=SymbolType.ARROW,
            symbol_size=6,
            color="blue"),  # 添加效果 箭头arrow
        linestyle_opts=opts.LineStyleOpts(
            curve=0.2,
            # color = 'red'
            type_ = 'dotted') # 设置两点间线缆的弯曲度,连线格式为虚线,参考线样式配置项
    )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))  # 系列配置项
    .set_global_opts(title_opts=opts.TitleOpts(title="泰坦尼克号home.dest流向图"))  # 全局配置项
    .render('world.html')
)

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值