Pyecharts配置項使用


一、Pyecharts簡介
Echarts是XX開源的數據可視化js庫,而python是強大的腳本語言,將Echarts和python結合起來,就組成了pyecharts可視化python庫,這對於簡單的數據可視化是非常容易的。

二、Pyecharts安裝
pyecharts 分為 v0.5.X 和 v1 兩個大版本,v0.5.X 和 v1 間不兼容​,並對應不同的python版本。pyecharts的v0.5.X版本支持python2.7、python3.4+;pyecharts的v1版本僅支持python3.6+。個人覺得v1版本的功能更強大也更方便使用一些。

(1)安裝v0.5.X版本:pip install pyecharts == 0.5.5
(2)安裝最新版(v1以上):pip install pyecharts

三、配置項簡介

pyecharts的圖表樣式都是通過配置來操作的,包括初始化、全局配置項、系列配置項、圖表配置項等。
初始化
在初始化配置中,可以設置畫布的長、寬,網頁標題、圖表主題、背景色等;
初始化可通過options.InitOpts設置

#表示設置柱狀圖的長為600px,寬為400px
bar = Bar(init_opts=options.InitOpts("600px","400px"))

 

全局配置項
全局配置項通過set_global_options方法設置
1、標題配置項
標題配置項中常用的為標題內容及展示位置、標題字體、大小等,如下示例:

#title_opts為全局配置項中標題設置參數
#options.TitleOpts為全局配置項中標題設置的值,是一個方法
#方法的參數包括圖表標題名稱title、位置pos_left、pos_right等,以下表示居中顯示
title_opts=options.TitleOpts(title="示例",pos_left="center",pos_right="center"
#title_textstyle_opts是options.TitleOpts的另一個參數,表示文本類型
#options.TextStyleOpts為設置文本字體、大小的值,以下表示字體為“微軟雅黑”,字體大小為12
title_textstyle_opts=options.TextStyleOpts(font_family="微軟雅黑",font_size="12")

2、圖表Y軸樣式
圖表分割線也需要在全局配置項中設置,如下:

#yaxis_opts為全局配置的y軸展示樣式參數
#options.AxisOpts為系列配置項的坐標軸配置
#splitline_opts表示是否展示坐標軸的分割線,默認為False,即不展示
yaxis_opts=options.AxisOpts(splitline_opts=options.SplitLineOpts(is_show=True))

 

3、圖例設置項
圖例的展示形式、位置也是需要在全局配置項中設置的,如下:

# legend_opts表示全局配置的圖例配置項
#options.LegendOpts表示圖例配置項的值,可以配置位置、字體、大小等,如下:
 legend_opts=options.LegendOpts(pos_bottom="0",
                                                        textstyle_opts=options.TextStyleOpts(font_family="微軟雅黑",font_size="8"))

系列配置項
系列配置項通過set_series_opts方法設置
1、標簽配置項
標簽配置項可配置標簽的字體顏色、字體大小等,如下:

#label_opts表示標簽選項參數
#options.LabelOpts表示配置標簽選項的方法
#方法包括顏色配置、字體、大小等
.set_series_opts(label_opts=options.LabelOpts(color="#0A0A0D",font_family="微軟雅黑",font_size="10"))

2、分割線配置項
分割線配置項作為系列配置項,常用作全局配置項中的Y軸樣式的參數值,如下:

yaxis_opts=options.AxisOpts(splitline_opts=options.SplitLineOpts(is_show=True))

圖表配置項
除了全局和系列配置項,具體的圖表類型也有自己獨特的配置項,比如柱狀圖就可以設置柱子之間的寬度、柱子的寬度以及柱子的顏色,如下:

#category_gap可以設置柱子的寬度,因為默認的柱子寬度可能會寬,不好看
#options.ItemStyleOpts可以設置柱子的顏色,如果會js,可以嵌入js實現柱子不同的顏色
bar.add_yaxis("",data,category_gap='60%',itemstyle_opts=options.ItemStyleOpts(color="#ccc"))

注:以上的配置項可以滿足做一個好看的圖表了,如果想深入學習可以去官方文檔

 

四、應用實例

from pyecharts.charts import Bar
from pyecharts import options
from pyecharts.render import make_snapshot
# 使用 snapshot-selenium 渲染圖片
from snapshot_selenium import snapshot

 bar = Bar(init_opts=options.InitOpts("600px", "400px"))  # 設置畫布高和寬
    bar.add_xaxis(["襪子", "鞋子","襯衫","毛衣"])
    bar.add_yaxis("", data, category_gap='60%', itemstyle_opts=options.ItemStyleOpts())
    bar.set_global_opts(title_opts=options.TitleOpts(title=titleName,
                                                     pos_left="center",
                                                     pos_right="center",
                                                     title_textstyle_opts=options.TextStyleOpts(font_family="微軟雅黑",
                                                                                                font_size="12")),
                        yaxis_opts=options.AxisOpts(splitline_opts=options.SplitLineOpts(is_show=True)))
    bar.set_series_opts(label_opts=options.LabelOpts(color="#0A0A0D", font_family="微軟雅黑", font_size="10"))
    PNGName = titleName + ".png"
    #生成圖片
    make_snapshot(snapshot, bar.render(), PNGName)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM