您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“怎么使用Python+Pyecharts實(shí)現(xiàn)漏斗圖”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
為了完成本關(guān)任務(wù),你需要掌握:
1. Python 的基本語法
2. PyEcharts 漏斗圖的相關(guān)內(nèi)容
導(dǎo)入圖表類型
與日歷圖的操作類似,在文件的開始我們首先要將所需包導(dǎo)入,如右側(cè)編輯器中代碼所示。
導(dǎo)入漏斗圖的語句為
from pyecharts.charts import Funnel
為了方便構(gòu)造數(shù)據(jù),我們還導(dǎo)入了 PyEcharts 提供的虛擬數(shù)據(jù)包,如下所示:
from pyecharts.faker import Faker
構(gòu)造數(shù)據(jù)
通過 PyEcharts 提供的虛擬數(shù)據(jù)包 Faker,我們可以用如下語句構(gòu)造一個二維 List:
data = [ list(z) for z in zip(Faker.choose(), Faker.values()) ]
其中,F(xiàn)aker包中的 choose 方法會隨機(jī)選擇一組屬性,而 values 方法則生成隨機(jī)的數(shù)據(jù)值。
熟悉標(biāo)題配置選項
在之前的關(guān)卡中我們已經(jīng)熟悉了 PyEcharts 繪圖的流程,故本關(guān)主要介紹標(biāo)題相關(guān)的配置選項:
class TitleOpts( # 主標(biāo)題文本,支持使用 \n 換行。 title: Optional[str] = None, # 主標(biāo)題跳轉(zhuǎn) URL 鏈接 title_link: Optional[str] = None, # 主標(biāo)題跳轉(zhuǎn)鏈接方式 # 默認(rèn)值是: blank # 可選參數(shù): 'self', 'blank' # 'self' 當(dāng)前窗口打開; 'blank' 新窗口打開 title_target: Optional[str] = None, # 副標(biāo)題文本,支持使用 \n 換行。 subtitle: Optional[str] = None, # 副標(biāo)題跳轉(zhuǎn) URL 鏈接 subtitle_link: Optional[str] = None, # 副標(biāo)題跳轉(zhuǎn)鏈接方式 # 默認(rèn)值是: blank # 可選參數(shù): 'self', 'blank' # 'self' 當(dāng)前窗口打開; 'blank' 新窗口打開 subtitle_target: Optional[str] = None, # title 組件離容器左側(cè)的距離。 # left 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比, # 也可以是 'left', 'center', 'right'。 # 如果 left 的值為'left', 'center', 'right',組件會根據(jù)相應(yīng)的位置自動對齊。 pos_left: Optional[str] = None, # title 組件離容器右側(cè)的距離。 # right 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。 pos_right: Optional[str] = None, # title 組件離容器上側(cè)的距離。 # top 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比, # 也可以是 'top', 'middle', 'bottom'。 # 如果 top 的值為'top', 'middle', 'bottom',組件會根據(jù)相應(yīng)的位置自動對齊。 pos_top: Optional[str] = None, # title 組件離容器下側(cè)的距離。 # bottom 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。 pos_bottom: Optional[str] = None, # 標(biāo)題內(nèi)邊距,單位px,默認(rèn)各方向內(nèi)邊距為5,接受數(shù)組分別設(shè)定上右下左邊距。 # // 設(shè)置內(nèi)邊距為 5 # padding: 5 # // 設(shè)置上下的內(nèi)邊距為 5,左右的內(nèi)邊距為 10 # padding: [5, 10] # // 分別設(shè)置四個方向的內(nèi)邊距 # padding: [ # 5, // 上 # 10, // 右 # 5, // 下 # 10, // 左 # ] padding: Union[Sequence, Numeric] = 5, # 主副標(biāo)題之間的間距。 item_gap: Numeric = 10, # 主標(biāo)題字體樣式配置項,參考 `series_options.TextStyleOpts` title_textstyle_opts: Union[TextStyleOpts, dict, None] = None, # 副標(biāo)題字體樣式配置項,參考 `series_options.TextStyleOpts` subtitle_textstyle_opts: Union[TextStyleOpts, dict, None] = None, )
如上所示,標(biāo)題主要分為主標(biāo)題和副標(biāo)題兩個模塊,其配置方法相類似。比較常用的有設(shè)置文本、設(shè)置超鏈接、設(shè)置位置等選項。上述字體樣式配置與其他部分字體樣式配置相似,我們將在后續(xù)實(shí)訓(xùn)中詳細(xì)介紹。
標(biāo)題配置屬于全局配置項,可通過 set_global_opts 方法設(shè)置。
根據(jù)以上介紹,在右側(cè)編輯器補(bǔ)充代碼,繪制給定數(shù)據(jù)的漏斗圖,要求:
系列名稱設(shè)置為“商品”;
將給定數(shù)據(jù)傳入漏斗圖;
將漏斗圖標(biāo)題設(shè)置為“Funnel-基本示例”;
為漏斗圖添加副標(biāo)題,命名為“Funnel-副標(biāo)題”。
平臺會運(yùn)行你編寫的代碼進(jìn)行繪圖,并與預(yù)期圖片進(jìn)行比對。預(yù)期效果如下:
提示:
設(shè)置系列名稱以及添加數(shù)據(jù)部分可以簡寫為:
...
.add("名稱", data)
...
開始你的任務(wù)吧,祝你成功!
from PreTest import * from pyecharts import options as opts from pyecharts.render import make_snapshot from snapshot_phantomjs import snapshot from pyecharts.charts import Funnel from pyecharts.faker import Faker data = [ list(z) for z in zip(Faker.choose(), Faker.values()) ] def funnel_chart() -> Funnel: # ********* Begin *********# funnel = ( Funnel() .add("商品", data) .set_global_opts(title_opts=opts.TitleOpts(title="Funnel-基本示例",subtitle="Funnel-副標(biāo)題")) ) # ********** End **********# return funnel make_snapshot(snapshot, funnel_chart().render("Result/render.html"), 'StudentAnswer/student_answer.png') # 輸出圖片 make_snapshot(snapshot, funnel_base(data).render(), "StandardAnswer/task1/standard_answer_1.png")
“怎么使用Python+Pyecharts實(shí)現(xiàn)漏斗圖”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。