濮阳杆衣贸易有限公司

主頁 > 知識庫 > 學(xué)會這個炫酷圖表利器pyecharts,還怕不被公司重用?

學(xué)會這個炫酷圖表利器pyecharts,還怕不被公司重用?

熱門標(biāo)簽:地圖標(biāo)注自己和別人標(biāo)注區(qū)別 南陽打電話機器人 孝感營銷電話機器人效果怎么樣 打電話機器人營銷 聊城語音外呼系統(tǒng) 騰訊地圖標(biāo)注沒法顯示 商家地圖標(biāo)注海報 海外網(wǎng)吧地圖標(biāo)注注冊 ai電銷機器人的優(yōu)勢

一、安裝

首先我們需要安裝下pyecharts,通過pip指令直接安裝即可。

pip install pyecharts

安裝完成后, 可通過pip list指令查看python安裝的庫列表。查看pyecharts安裝版本和是否安裝成功。

二、導(dǎo)入模塊

老規(guī)矩,為了故事的順利發(fā)展,我們可以先導(dǎo)入本文所需的模塊。

from pyecharts.charts import Bar
from pyecharts.charts import Pie
from pyecharts.charts import Line
from pyecharts import options as opts
from pyecharts.charts import EffectScatter
from pyecharts.globals import SymbolType
from pyecharts.charts import Grid
from pyecharts.charts import WordCloud
from pyecharts.charts import Map
import random

注:以下圖表生成都是在在 Jupyter Notebook 環(huán)境中實現(xiàn)。

三、柱狀圖

平時我們看到最多的就是柱狀圖了,pyecharts 生成柱狀圖也是非常簡單。直接填入 x 軸和 y 軸的數(shù)據(jù)就行。

x = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
data_china = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
data_russia = [1.6, 5.4, 9.3, 28.4, 22.7, 60.7, 162.6, 199.2, 56.7, 43.8, 3.0, 4.9]

bar = Bar()
bar.add_xaxis(x)
bar.add_yaxis("降水量", data_china)
bar.set_global_opts(title_opts=opts.TitleOpts(title="Bar - 降水示例"))
bar.rerender_notebook()

run運行程序后,就會得到如下所示柱狀圖:

當(dāng)然pyecharts還支持鏈?zhǔn)秸{(diào)用,實現(xiàn)的功能一致,代碼如下:

bar = (
    Bar()
    .add_xaxis(x)
    .add_yaxis('china', data_china)
    .set_global_opts(title_opts=opts.TitleOpts(title="Bar - 降水示例"))
)
bar.render_notebook()

此外,還可以在一個柱狀圖中添加多個 y 軸記錄,實現(xiàn)多個柱狀對比,只需調(diào)用多一次 add_yaxis 即可。

bar = (
    Bar()
    .add_xaxis(x)
    .add_yaxis('china', data_china)
    .add_yaxis("sussia", data_russia)
    .set_global_opts(title_opts=opts.TitleOpts(title="Bar - 多柱狀圖"))
)
bar.render_notebook()

有時候,柱狀圖太高不方便看,我們還可以將 x 軸和 y 軸互換,生成橫向的柱狀圖。多柱狀圖和 xy 軸互換不沖突,可疊加使用。

bar = (
    Bar()
    .add_xaxis(x)
    .add_yaxis('china', data_china)
    .add_yaxis('russia', data_russia)
    .reversal_axis()
    .set_series_opts(label_opts=opts.LabelOpts(position="right"))
    .set_global_opts(title_opts=opts.TitleOpts(title="Bar - 翻轉(zhuǎn) XY 軸"))
)
bar.render_notebook()

四、餅狀圖

餅狀圖也是使用頻率很高的圖表之一,尤其是適用于百分比類的圖,可以很直觀的看出來各個類別所占據(jù)總體份額的比例。

pie = (
    Pie()
    .add("", [list(z) for z in zip(x, data_china)])
    .set_global_opts(title_opts=opts.TitleOpts(title="餅圖示例"))
    .set_series_opts(label_opts=opts.LabelOpts(formatter=": {c}"))
)
pie.render_notebook()

圓環(huán)餅狀圖

pie = (
    Pie(init_opts=opts.InitOpts(width="600px", height="400px"))
    .add(
        series_name="降雨量",
        data_pair=[list(z) for z in zip(x, data_china)],
        radius=["50%", "70%"],
        label_opts=opts.LabelOpts(is_show=False, position="center"),
    )
    .set_global_opts(legend_opts=opts.LegendOpts(pos_left="legft", orient="vertical"))
    .set_series_opts(
        tooltip_opts=opts.TooltipOpts(
            trigger="item", formatter="{a} br/>: {c} (tjfbl7v%)"
        ),
    label_opts=opts.LabelOpts(formatter=": {c}")
    )
)
pie.render_notebook()

五、折線圖

折線圖通常是來展示數(shù)據(jù)在不同時間段的走勢,例如比較經(jīng)典的股市 K 線圖就是折線圖的一種。

line = (
    Line()
    .add_xaxis(x)
    .add_yaxis('china', data_china)
    .set_global_opts(title_opts=opts.TitleOpts(title="折線圖示例"))
)
line.render_notebook()

同樣,和柱狀圖類似,折線圖也可以在一個圖中添加多個 y 軸記錄。

line = (
    Line()
    .add_xaxis(x)
    .add_yaxis('china', data_china)
    .add_yaxis('russis', data_russia)
    .set_global_opts(title_opts=opts.TitleOpts(title="雙折線圖"))
)
line.render_notebook()

當(dāng)然了還有階梯折線圖,同樣可以實現(xiàn)。

line = (
    Line()
    .add_xaxis(x)
    .add_yaxis('china', data_china, is_step=True)
    .set_global_opts(title_opts=opts.TitleOpts(title="階梯折線圖"))
)
line.render_notebook()

六、散點圖

scatter = (
    EffectScatter()
    .add_xaxis(x)
    .add_yaxis("", data_china)
    .set_global_opts(title_opts=opts.TitleOpts(title="散點圖示例"))
)
scatter.render_notebook()

數(shù)據(jù)對比不是很清晰,我們可以給散點圖加上網(wǎng)格,使各個點對應(yīng)的 y 軸數(shù)據(jù)更清晰可見。

scatter = (
    EffectScatter()
    .add_xaxis(x)
    .add_yaxis("china", data_china, symbol=SymbolType.ARROW)
    .set_global_opts(
        title_opts=opts.TitleOpts(title="散點圖-分割線"),
        xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
        yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
    )
)
scatter.render_notebook()

我們還可以指定點的形狀,還可以在一個散點圖上加多個 y 軸記錄。這些配置就像積木一樣,隨意堆疊。

scatter = (
    EffectScatter()
    .add_xaxis(x)
    .add_yaxis("china", [x + 30 for x in data_russia],symbol=SymbolType.ARROW)
    .add_yaxis("russia", data_russia, symbol=SymbolType.TRIANGLE) 
    .set_global_opts(
        title_opts=opts.TitleOpts(title="分割線-散點圖"),
        xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
        yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
    )
)
scatter.render_notebook()

七、圖表合并

有時候,我們還要把多種圖放在一張圖上來集中顯示,pyechars 也想到了。基本步驟就是先單獨生成各自類別的圖,然后用 Grid 將二者合并起來即可。

比如我們想將柱狀圖和折線圖放在一起,那就先分別生成 Bar 和 Line,然后將二者合并即可。

from pyecharts.charts import Grid

bar = (
    Bar()
    .add_xaxis(x)
    .add_yaxis('china', data_china)
    .add_yaxis("sussia", data_russia)
    .set_global_opts(
        title_opts=opts.TitleOpts(title="多圖合并"),
    )
)

line = (
    Line()
    .add_xaxis(x)
    .add_yaxis("蒸發(fā)量", [x + 50 for x in data_china]
    )
)

bar.overlap(line)
grid = Grid()
grid.add(bar, opts.GridOpts(pos_left="5%", pos_right="5%"), is_control_axis_index=True)
grid.render_notebook()

八、詞云

pyechars 對詞云同樣也是可以的,中文也完全沒問題,不會出現(xiàn)亂碼。

import pyecharts.options as opts
from pyecharts.charts import WordCloud

data = [("生活資源", "999"),("供熱管理", "888"),("供氣質(zhì)量", "777"),("生活用水管理", "688"),("一次供水問題", "588"),("交通運輸", "516"),("城市交通", "515"),("環(huán)境保護", "483"),("房地產(chǎn)管理", "462"),("城鄉(xiāng)建設(shè)", "449"),("社會保障與福利", "429"),("社會保障", "407"),("文體與教育管理", "406"),("公共安全", "406"),("公交運輸管理", "386"),("出租車運營管理", "385"),("供熱管理", "375"),("市容環(huán)衛(wèi)", "355"),("自然資源管理", "355"),("粉塵污染", "335"),("噪聲污染", "324"),("土地資源管理", "304"),("物業(yè)服務(wù)與管理", "304"),("醫(yī)療衛(wèi)生", "284"),("粉煤灰污染", "284"),("占道", "284"),("供熱發(fā)展", "254"),("農(nóng)村土地規(guī)劃管理", "254"),("生活噪音", "253"),("供熱單位影響", "253"),("城市供電", "223"),("房屋質(zhì)量與安全", "223"),("大氣污染", "223"),("房屋安全", "223"),("文化活動", "223"),("拆遷管理", "223"),("公共設(shè)施", "223"),("供氣質(zhì)量", "223"),("供電管理", "223"),("燃?xì)夤芾?, "152"),("教育管理", "152"),("醫(yī)療糾紛", "152"),("執(zhí)法監(jiān)督", "152"),("設(shè)備安全", "152"),("政務(wù)建設(shè)", "152"),("縣區(qū)、開發(fā)區(qū)", "152"),("宏觀經(jīng)濟", "152"),("教育管理", "112"),("社會保障", "112"),("生活用水管理", "112"),("物業(yè)服務(wù)與管理", "112"),("分類列表", "112"),("農(nóng)業(yè)生產(chǎn)", "112"),("二次供水問題", "112"),("城市公共設(shè)施", "92"),("拆遷政策咨詢", "92"),("物業(yè)服務(wù)", "92"),("物業(yè)管理", "92"),("社會保障保險管理", "92"),("低保管理", "92"),("文娛市場管理", "72"),("城市交通秩序管理", "72"),("執(zhí)法爭議", "72"),("商業(yè)煙塵污染", "72"),("占道堆放", "71"),("地上設(shè)施", "71"),("水質(zhì)", "71"),("無水", "71"),("供熱單位影響", "71"),("人行道管理", "71"),("主網(wǎng)原因", "71"),("集中供熱", "71"),("客運管理", "71"),("國有公交(大巴)管理", "71"),("工業(yè)粉塵污染", "71"),("治安案件", "71"),("壓力容器安全", "71"),("身份證管理", "71"),("群眾健身", "41"),("工業(yè)排放污染", "41"),("破壞森林資源", "41"),("市場收費", "41"),("生產(chǎn)資金", "41"),("生產(chǎn)噪聲", "41"),("農(nóng)村低保", "41"),("勞動爭議", "41"),("勞動合同爭議", "41"),("勞動報酬與福利", "41"),("醫(yī)療事故", "21"),("停供", "21"),("基礎(chǔ)教育", "21"),("職業(yè)教育", "21"),("物業(yè)資質(zhì)管理", "21"),("拆遷補償", "21"),("設(shè)施維護", "21"),("市場外溢", "11"),("占道經(jīng)營", "11"),("樹木管理", "11"),("農(nóng)村基礎(chǔ)設(shè)施", "11"),("無水", "11"),("供氣質(zhì)量", "11"),("停氣", "11"),("市政府工作部門(含部門管理機構(gòu)、直屬單位)", "11"),("燃?xì)夤芾?, "11"),("市容環(huán)衛(wèi)", "11"),("新聞傳媒", "11"),("人才招聘", "11"),("市場環(huán)境", "11"),("行政事業(yè)收費", "11"),("食品安全與衛(wèi)生", "11"),("城市交通", "11"),("房地產(chǎn)開發(fā)", "11"),("房屋配套問題", "11"),("物業(yè)服務(wù)", "11"),("物業(yè)管理", "11"),("占道", "11"),("園林綠化", "11"),("戶籍管理及身份證", "11"),("公交運輸管理", "11"),("公路(水路)交通", "11"),("房屋與圖紙不符", "11"),("有線電視", "11"),("社會治安", "11"),("林業(yè)資源", "11"),("其他行政事業(yè)收費", "11"),("經(jīng)營性收費", "11"),("食品安全與衛(wèi)生", "11"),("體育活動", "11"),("有線電視安裝及調(diào)試維護", "11"),("低保管理", "11"),("勞動爭議", "11"),("社會福利及事務(wù)", "11"),("一次供水問題", "11"),]

wordCloud = (
    WordCloud()
    .add(series_name="熱點分析", data_pair=data, word_size_range=[6, 66])
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="熱點分析", title_textstyle_opts=opts.TextStyleOpts(font_size=23)
        ),
        tooltip_opts=opts.TooltipOpts(is_show=True),
    )
)

九、地圖

有時我們會希望將數(shù)據(jù)展示在地圖上,比如全國疫情狀況,全國各省份人口數(shù)據(jù),微信好友各省份分布等。

provinces = ['廣東', '北京', '上海', '湖南', '重慶', '新疆', '河南', '黑龍江', '浙江', '臺灣'] 
values = [random.randint(1, 1024) for x in range(len(provinces))]

map = (
    Map()
    .add("", [list(z) for z in zip(provinces, values)], "china")
    .set_global_opts(
        title_opts=opts.TitleOpts(title="中國地圖示例"),
        visualmap_opts=opts.VisualMapOpts(max_=1024, is_piecewise=True),
    )

)
map.render_notebook()

十、總結(jié)

今天我們通過 pyecharts 繪制了幾種常用圖表,當(dāng)然繪制圖表都有固定的套路流程。

生成圖表大致可分為三個步驟,準(zhǔn)備相關(guān)數(shù)據(jù)、利用鏈?zhǔn)秸{(diào)用法設(shè)置數(shù)據(jù)和相關(guān)配置、調(diào)用 render_notebook() 或者 render() 函數(shù)生成圖表。

到此這篇關(guān)于學(xué)會這個炫酷圖表利器pyecharts,還怕不被公司重用?的文章就介紹到這了,更多相關(guān)python pyecharts內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python用pyecharts實現(xiàn)地圖數(shù)據(jù)可視化
  • Python繪制K線圖之可視化神器pyecharts的使用
  • Python繪制詞云圖之可視化神器pyecharts的方法
  • python使用pyecharts庫畫地圖數(shù)據(jù)可視化的實現(xiàn)
  • Python數(shù)據(jù)可視化處理庫PyEcharts柱狀圖,餅圖,線性圖,詞云圖常用實例詳解
  • Python數(shù)據(jù)可視化 pyecharts實現(xiàn)各種統(tǒng)計圖表過程詳解
  • Python 數(shù)據(jù)可視化pyecharts的使用詳解

標(biāo)簽:南寧 迪慶 撫州 聊城 牡丹江 揚州 楊凌 六盤水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《學(xué)會這個炫酷圖表利器pyecharts,還怕不被公司重用?》,本文關(guān)鍵詞  學(xué)會,這個,炫酷,圖表,利器,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《學(xué)會這個炫酷圖表利器pyecharts,還怕不被公司重用?》相關(guān)的同類信息!
  • 本頁收集關(guān)于學(xué)會這個炫酷圖表利器pyecharts,還怕不被公司重用?的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    贵定县| 长治县| 禹州市| 神池县| 岢岚县| 仪陇县| 云霄县| 定西市| 平南县| 通江县| 库伦旗| 万源市| 安福县| 华宁县| 阿巴嘎旗| 贵南县| 泰州市| 合川市| 日喀则市| 承德市| 清徐县| 临汾市| 衢州市| 桦川县| 太和县| 淳安县| 集安市| 平罗县| 边坝县| 夏津县| 青州市| 阜南县| 正宁县| 扶沟县| 谷城县| 上饶县| 府谷县| 嘉定区| 巴东县| 梁山县| 岳普湖县|