<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          繼Pyecharts之后,又一款國(guó)產(chǎn)可視化軟件

          共 3307字,需瀏覽 7分鐘

           ·

          2021-12-29 11:01


          續(xù)前篇??中國(guó)人自己的可視化利器:Pyecharts,本期分享另一個(gè)國(guó)人可視化工具PyG2Plot

          介紹之前,先梳理下G2、G2Plot、PyG2Plot三者關(guān)系

          • G2:一套由螞蟻集團(tuán)數(shù)據(jù)可視化團(tuán)隊(duì)(AntV)開發(fā),基于圖層圖形語(yǔ)法(the grammar of graphics,同ggplot2底層語(yǔ)法)的可視化底層高交互引擎;
          • G2Plot:基于G2封裝,力求開箱即用、易于配置、具有良好交互體驗(yàn)的JavaScript統(tǒng)計(jì)圖表庫(kù);
          • PyG2Plot:基于G2Plot封裝的Python統(tǒng)計(jì)圖表庫(kù),借鑒Pyecharts圖表實(shí)現(xiàn)形式,但比Pyecharts更簡(jiǎn)練。總之,G2Plot之于PyG2Plot就如同Pyecharts之于Echarts。

          安裝

          pip?install?pyg2plot

          快速上手

          PyG2Plot是完全基于G2Plot的封裝,并且在數(shù)據(jù)結(jié)構(gòu)上,完全不做任何二次封裝,所以配置文檔上完全可以參考G2Plot官方文檔

          下面用幾個(gè)案例來(lái)說(shuō)明如何參考G2Plot官方文檔,使用PyG2Plot,

          案例一、桑基圖

          G2Plot地址:https://antv-g2plot.gitee.io/zh/examples/relation-plots/sankey#energy將上圖繪圖數(shù)據(jù)和核心代碼照抄到PyG2Plot中即可實(shí)現(xiàn)相同功能??

          #導(dǎo)入pyg2plot
          from?pyg2plot?import?Plot

          #?獲取上文G2Plot代碼中的json數(shù)據(jù),存入data
          import?requests
          data?=?requests.get(
          ????"https://gw.alipayobjects.com/os/bmw-prod/fa3414cc-75ed-47b4-8306-f2ffe8c40127.json"
          ).json()


          #?指定繪圖類別Sankey
          sankey?=?Plot("Sankey")


          #下面set_options的{}中的代碼完全照搬自G2Plot,關(guān)鍵字添加''即可,
          sankey.set_options({
          ????'height':500,
          ????'data':?data,
          ????'sourceField':?'source',
          ????'targetField':?'target',
          ????'weightField':?'value',
          ????'edgeStyle':?{
          ????????'fill':?'#ccc',
          ????????'fillOpacity':?0.4,
          ????},
          })

          #?圖像渲染
          sankey.render_notebook()

          重點(diǎn)參數(shù)都位于set_options()中,更多個(gè)性化設(shè)置參考G2Plot2文檔:https://antv-g2plot.gitee.io/zh/examples/relation-plots/sankey#energy個(gè)人感覺文檔比Pyecharts的文檔更適合人看,??API中羅列所有參數(shù)詳細(xì)說(shuō)明,設(shè)計(jì)指引中詳細(xì)說(shuō)明該圖表的使用場(chǎng)景、數(shù)據(jù)要求及設(shè)計(jì)建議,因?yàn)镚2Plot2目前還處于開發(fā)狀態(tài),有的圖表設(shè)計(jì)指引為空
          以修改color參數(shù)為例,
          傳入色號(hào),效果圖,案例二、弦圖

          G2Plot地址:https://antv-g2plot.gitee.io/zh/examples/relation-plots/chord#chord-populationPyG2Plot中實(shí)現(xiàn)和案例一一樣,直接貼上PyG2Plot實(shí)現(xiàn)代碼,

          from?pyg2plot?import?Plot

          data?=?[
          ??{?'source':?'北京',?'target':?'天津',?'value':?30?},
          ??{?'source':?'北京',?'target':?'上海',?'value':?80?},
          ??{?'source':?'北京',?'target':?'河北',?'value':?46?},
          ??{?'source':?'北京',?'target':?'遼寧',?'value':?49?},
          ??{?'source':?'北京',?'target':?'黑龍江',?'value':?69?},
          ??{?'source':?'北京',?'target':?'吉林',?'value':?19?},
          ??{?'source':?'天津',?'target':?'河北',?'value':?62?},
          ??{?'source':?'天津',?'target':?'遼寧',?'value':?82?},
          ??{?'source':?'天津',?'target':?'上海',?'value':?16?},
          ??{?'source':?'上海',?'target':?'黑龍江',?'value':?16?},
          ??{?'source':?'河北',?'target':?'黑龍江',?'value':?76?},
          ??{?'source':?'河北',?'target':?'內(nèi)蒙古',?'value':?24?},
          ??{?'source':?'內(nèi)蒙古','?target':?'北京',?'value':?32?},
          ]

          chord?=?Plot("Chord")

          chord.set_options({
          ????'height':400,
          ??'data':?data,
          ??'sourceField':?'source',
          ??'targetField':?'target',
          ??'weightField':?'value',
          ????'theme':?{
          ????'colors10':?['#FF6B3B',?'#626681',?'#FFC100',?'#9FB40F',?'#76523B',?'#DAD5B5',?'#0E8E89',?'#E19348',?'#F383A2',?'#247FEA']
          }
          })

          chord.render_notebook()

          案例三、面積圖

          G2Plot地址:https://antv-g2plot.gitee.io/zh/examples/area/stacked#basic-sliderPyG2Plot實(shí)現(xiàn)代碼,

          from?pyg2plot?import?Plot
          import?requests

          data?=?requests.get(
          ????"https://gw.alipayobjects.com/os/bmw-prod/b21e7336-0b3e-486c-9070-612ede49284e.json"
          ).json()

          area?=?Plot("Area")

          area.set_options({
          ????'height':?500,
          ????'width':?300,
          ????'data':?data,
          ????'xField':?'date',
          ????'yField':?'value',
          ????'seriesField':?'country',
          ????'slider':?{
          ????????'start':?0.1,
          ????????'end':?0.9,
          ????},
          })

          area.render_notebook()

          更多案例

          G2Plot包含大量案例,理論上PyG2Plot都可用,


          總結(jié)

          • G2Plot還處于開發(fā)中,未來(lái)可期;
          • G2Plot在地理圖表方面很欠缺,官網(wǎng)幾乎沒有示例,看到的小伙伴可以私信一下~;
          • 和Pyechart/Echarts相比,PyG2Plot還是太稚嫩,所以,再見Pyechart、吊打Pyecharts蕓蕓還為時(shí)過(guò)早????

          進(jìn)一步學(xué)習(xí)

          https://github.com/hustcc/PyG2Plot
          https://github.com/antvis/G2Plot


          -END-

          瀏覽 51
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

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

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  色播丁香五月 | 波多野结衣AV在线播放 | 五月天成人在线观看视频 | 国产婷婷在线视频 | 亚洲青娱乐在线观看 |