1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        用 PyEcharts 制作一款地球儀

        共 4712字,需瀏覽 10分鐘

         ·

        2021-01-28 14:20

        文:潮汐

        來源:Python 技術(shù)(pythonall)


        大家好,歡迎來到 Crossin的編程教室 !

        Python 功能真的很強(qiáng),強(qiáng)大到讓人吃驚,它能做的事囊括爬蟲、數(shù)據(jù)分析、數(shù)據(jù)可視化、游戲等等各方面,這些功能在實(shí)際的使用中應(yīng)用廣泛,開發(fā)程序講究頁面的美觀與炫酷效果, 今天的文章將給各位讀者朋友們帶來不一樣的視覺盛宴,感興趣的朋友歡迎一起嘗試。

        本文實(shí)現(xiàn)的功能主要依賴于 pyechats 庫??梢酝ㄟ^

        pip install pyecharts

        進(jìn)行安裝。

        官網(wǎng)地址:pyecharts.org

        pyecharts 功能很強(qiáng)大,只需要導(dǎo)入相應(yīng)的模塊就配置相應(yīng)的選項(xiàng)即可生成對應(yīng)的超文本文件,使用瀏覽器訪問即可!具體實(shí)例請見下文:

        盛宴1:2D世界地圖

        先來個 2D 的瞅瞅~

        世界地圖

        實(shí)現(xiàn)代碼如下:

        from pyecharts import options as optsfrom pyecharts.charts import Mapfrom pyecharts.faker import Faker
        c = ( Map(init_opts=opts.InitOpts(width='1500px', height='1200px',bg_color='#E0EEEE')) # 加載世界地圖實(shí)例 .add("世界地圖", [list(z) for z in zip(Faker.country, Faker.values())], "world") # 不顯示地圖標(biāo)志 .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) .set_global_opts( # 配置項(xiàng)標(biāo)題設(shè)置 title_opts=opts.TitleOpts(title="世界地圖示例"), visualmap_opts=opts.VisualMapOpts(max_=200) ) # 生成超文本文件 .render("world_map.html"))

        盛宴2:3D地圖

        通過導(dǎo)入 Map3D 等實(shí)現(xiàn)中國陸地區(qū)域的 3D 呈現(xiàn):


        實(shí)現(xiàn)代碼如下:

        from pyecharts import options as optsfrom pyecharts.charts import Map3Dfrom pyecharts.globals import ChartType
        c = ( Map3D(init_opts=opts.InitOpts(width='1300px', height='1300px',bg_color='#EBEBEB'))
        .add_schema( itemstyle_opts=opts.ItemStyleOpts( color="#CDBA96", opacity=1, border_width=0.8, border_color="rgb(62,215,213)", ), map3d_label=opts.Map3DLabelOpts( is_show=True, text_style=opts.TextStyleOpts( color="#104E8B", font_size=16, background_color="rgba(0,0,0,0)" ), ), emphasis_label_opts=opts.LabelOpts(is_show=True), light_opts=opts.Map3DLightOpts( main_color="#FFEBCD", main_intensity=1.2, is_main_shadow=False, main_alpha=55, main_beta=10, ambient_intensity=0.3, ), ) .add(series_name="", data_pair="", maptype=ChartType.MAP3D) # 全局設(shè)置地圖屬性 .set_global_opts( title_opts=opts.TitleOpts(title="全國行政區(qū)劃地圖"), visualmap_opts=opts.VisualMapOpts(is_show=False), tooltip_opts=opts.TooltipOpts(is_show=True), ) .render("map3d_china_base.html"))

        盛宴3:貴州地圖

        現(xiàn)在用另一種方式來實(shí)現(xiàn)我家鄉(xiāng)的地圖,一起來一睹為快~

        ?
        貴州地圖

        代碼實(shí)現(xiàn)如下:

        # 寫入省份內(nèi)各地區(qū)經(jīng)緯度example_data = [    [[106.70722,26.59820, 1000],[106.63024, 26.64702, 1000]],    [[104.83023, 26.59336], [106.92723, 27.72545]],    [[105.30504, 27.29847], [107.52034, 26.29322]],    [[107.89868, 26.52881], [104.948571, 25.077502]],    [[105.9462, 26.25367], [109.18099, 27.69066]],]# 添加 3D 地圖c = (    Map3D(init_opts=opts.InitOpts(width='1200px', height='1200px'))    .add_schema(        maptype="貴州",        itemstyle_opts=opts.ItemStyleOpts(            color="rgb(5,101,123)",            opacity=1,            border_width=0.8,            border_color="rgb(62,215,213)",        ),        light_opts=opts.Map3DLightOpts(            main_color="#fff",            main_intensity=1.2,            is_main_shadow=True,            main_alpha=55,            main_beta=10,            ambient_intensity=0.3,        ),        view_control_opts=opts.Map3DViewControlOpts(center=[-10, 0, 10]),        post_effect_opts=opts.Map3DPostEffectOpts(is_enable=True),
        ) .add( series_name="", data_pair=example_data, type_=ChartType.LINES3D, effect=opts.Lines3DEffectOpts( is_show=True, period=4, trail_width=3, trail_length=0.5, trail_color="#f00", trail_opacity=1, ), label_opts=opts.LabelOpts(is_show=True), ) .set_global_opts(title_opts=opts.TitleOpts(title="Map3D-GuiZhou3D")) .render("guizhou_map_3d.html"))

        盛宴4:地球村實(shí)現(xiàn)

        一起來看看旋轉(zhuǎn)的地球吧^^

        旋轉(zhuǎn)的地球

        實(shí)現(xiàn)代碼如下:

        import pyecharts.options as optsfrom pyecharts.charts import MapGlobefrom pyecharts.faker import POPULATION
        data = [x for _, x in POPULATION[1:]]low, high = min(data), max(data)c = ( MapGlobe(init_opts=opts.InitOpts(width='1000px', height='1000px',bg_color='#FFFAFA',)) .add_schema() .add( maptype="world", series_name="World Population", data_pair=POPULATION[1:], is_map_symbol_show=True, label_opts=opts.LabelOpts(is_show=True), ) .set_global_opts( title_opts=opts.TitleOpts(title="3D 地球示例"), # 設(shè)置地球?qū)傩?/span> visualmap_opts=opts.VisualMapOpts( min_=low, max_=high, range_text=["max", "min"], is_calculable=True, range_color=["lightskyblue", "yellow", "orangered"], ) ) .render("world_map_3d.html"))

        總結(jié)

        希望今天的分享能給大家?guī)聿灰粯拥囊曈X享受,同時伙伴們也別忘了要多多實(shí)踐。實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)!

        參考

        https://gallery.pyecharts.org/#/Map3D/



        _往期文章推薦_

        pyecharts繪制復(fù)聯(lián)超級英雄戰(zhàn)斗力




        瀏覽 114
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評論
        圖片
        表情
        推薦
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            美乳操逼视频在线观看 | BBBBBBBBB成人免费毛片 | 91精品区| 成人18禁免费330破解版 中文字幕在线免费视频 | japan白嫩丰满video | 国产乱子伦精品视频潮 | 国产高清无码一区二区三区 | 99.热 | 欧美亚洲特级69 | 黄色小电影网站 |