人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

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

發(fā)布日期:2022-03-16 13:43 | 文章來(lái)源:源碼之家

一、安裝

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

pip install pyecharts

安裝完成后, 可通過(guò)pip list指令查看python安裝的庫(kù)列表。查看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)境中實(shí)現(xiàn)。

三、柱狀圖

平時(shí)我們看到最多的就是柱狀圖了,pyecharts 生成柱狀圖也是非常簡(jiǎn)單。直接填入 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運(yùn)行程序后,就會(huì)得到如下所示柱狀圖:

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

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

此外,還可以在一個(gè)柱狀圖中添加多個(gè) y 軸記錄,實(shí)現(xiàn)多個(gè)柱狀對(duì)比,只需調(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()

有時(shí)候,柱狀圖太高不方便看,我們還可以將 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()

四、餅狀圖

餅狀圖也是使用頻率很高的圖表之一,尤其是適用于百分比類的圖,可以很直觀的看出來(lái)各個(gè)類別所占據(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} (j8gckjh%)"
  ),
 label_opts=opts.LabelOpts(formatter=": {c}")
 )
)
pie.render_notebook()

五、折線圖

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

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

同樣,和柱狀圖類似,折線圖也可以在一個(gè)圖中添加多個(gè) 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)然了還有階梯折線圖,同樣可以實(shí)現(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()

六、散點(diǎn)圖

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

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

scatter = (
 EffectScatter()
 .add_xaxis(x)
 .add_yaxis("china", data_china, symbol=SymbolType.ARROW)
 .set_global_opts(
  title_opts=opts.TitleOpts(title="散點(diǎn)圖-分割線"),
  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()

我們還可以指定點(diǎn)的形狀,還可以在一個(gè)散點(diǎn)圖上加多個(gè) 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="分割線-散點(diǎn)圖"),
  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()

七、圖表合并

有時(shí)候,我們還要把多種圖放在一張圖上來(lái)集中顯示,pyechars 也想到了?;静襟E就是先單獨(dú)生成各自類別的圖,然后用 Grid 將二者合并起來(lái)即可。

比如我們想將柱狀圖和折線圖放在一起,那就先分別生成 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 對(duì)詞云同樣也是可以的,中文也完全沒(méi)問(wèn)題,不會(huì)出現(xiàn)亂碼。

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

九、地圖

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

provinces = ['廣東', '北京', '上海', '湖南', '重慶', '新疆', '河南', '黑龍江', '浙江', '臺(tái)灣'] 
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="中國(guó)地圖示例"),
  visualmap_opts=opts.VisualMapOpts(max_=1024, is_piecewise=True),
 )
)
map.render_notebook()

十、總結(jié)

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

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

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

海外穩(wěn)定服務(wù)器

版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開(kāi)通

自選配置、實(shí)時(shí)開(kāi)通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問(wèn)服務(wù)

1對(duì)1客戶咨詢顧問(wèn)

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部