聽說你不會用python畫餅圖?趕緊進來看一下剛出爐的教程


​都21世紀30年代了,還有人問我餅狀圖怎么畫

於是我馬不停蹄寫了這篇餅狀圖教程,希望能夠幫助你們。

餅狀圖能夠清晰的反映出各項之間、各項和總和之間的占比關系,常見的餅狀圖主要有以下6種類型:

1.基本餅狀圖

這是餅狀圖最常見的類型,代碼如下:

#繪制高中同學現在職業占比餅狀圖
from pyecharts import options as opts
from pyecharts.charts import Pie
x=['程序員','教師','醫生','護士','警察','老板','律師','翻譯','運動員']
y=[18,5,3,4,8,2,2,5,1]
pie = (
    Pie()
    .add('高中同學職業占比',[(i,j)for i,j in zip(x,y)])
    .set_global_opts(title_opts=opts.TitleOpts(title="Pie-基本示例"))
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
pie.render_notebook()

 

 

 

 

 

 

 

 

 

 

 

 

 

2.調整餅圖標簽位置

根據需要,我們可以隨意調整餅狀圖的位置

from pyecharts import options as opts
from pyecharts.charts import Pie
x=['程序員','教師','醫生','護士','警察','老板','律師','翻譯','運動員']
y=[18,5,3,4,8,2,2,5,1]
pie = (
    Pie()
    .add('高中同學職業占比',[(i,j)for i,j in zip(x,y)])
    .set_global_opts(
        title_opts=opts.TitleOpts(title="Pie-調整位置"),
        legend_opts=opts.LegendOpts(pos_left="25%"),)
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
pie.render_notebook()

 

 

 

 

 

 

 

 

 

 

 

 

圖例組件離容器上下左右的距離分別用:pos_left、pos_right、pos_top、pos_bottom表示

3.設置餅圖顏色

感覺默認顏色不好看?不用怕,我們換了它!

from pyecharts import options as opts
from pyecharts.charts import Pie
x=['程序員','教師','醫生','護士','警察','老板','律師','翻譯','運動員']
y=[18,5,3,4,8,2,2,5,1]
pie = (
    Pie()
    .add('高中同學職業占比',[(i,j)for i,j in zip(x,y)])
    .set_colors(["blue","green","yellow","red","pink","orange","purple","lilac","pansy"])
    .set_global_opts(title_opts=opts.TitleOpts(title="Pie-基本示例"))
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
pie.render_notebook()

 

 

 

 

 

 

 

 

 

 

 

 

 

4.南丁格爾圖

來個造型奇特的柱狀圖

from pyecharts import options as opts
from pyecharts.charts import Pie
x=['程序員','教師','醫生','護士','警察','老板','律師','翻譯','運動員']
y=[18,5,3,4,8,2,2,5,1]
pie = (
    Pie()
    .add(
        series_name='高中同學職業占比',
        data_pair=[(i,j)for i,j in zip(x,y)],
        rosetype="radius",
        radius="85%",
        center=["50%", "50%"],
        label_opts=opts.LabelOpts(is_show=False, position="center"),)
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="Customized Pie",
            pos_left="center",
            pos_top="20",
            title_textstyle_opts=opts.TextStyleOpts(color="#fff"),
        ),
        legend_opts=opts.LegendOpts(is_show=False),
    )
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
pie.render_notebook()
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rosetype:有2種類型(radius:扇區圓心角展現數據的百分比,半徑展現數據的大小。area:所有扇區圓心角相同,僅通過半徑展現數據大小) center:原點位置

 

 

5.標簽滾動餅圖

為了提高視覺效果,我們需要滾動突出某項重點

from pyecharts import options as opts
from pyecharts.charts import Pie
x=['程序員','教師','醫生','護士','警察','老板','律師','翻譯','運動員']
y=[18,5,3,4,8,2,2,5,1]
pie = (
    Pie()
    .add('高中同學職業占比',[(i,j)for i,j in zip(x,y)])
    .set_global_opts(
        title_opts=opts.TitleOpts(title="Pie-Legend 滾動"),
        legend_opts=opts.LegendOpts(type_="scroll", pos_left="80%", orient="vertical"),
    )
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
pie.render_notebook()

 

 

 

 

 

 

 

 

 

 

 

 

 

LegendOpts參數介紹:type:圖例類型,'plain'代表普通圖例,'scroll'代表可滾動翻頁圖例 pos_left:圖例組件離容器左側的距離 orient:圖例列表的布局朝向。可選:'horizontal', 'vertical'

6.玫瑰花餅圖

一起來感受一下餅狀圖的美麗吧!

from pyecharts import options as opts
from pyecharts.charts import Pie
x=['程序員','教師','醫生','護士','警察','老板','律師','翻譯','運動員']
y=[18,5,3,4,8,2,2,5,1]
pie = (
    Pie()
   .add(
        "",
        [(i,j)for i,j in zip(x,y)],
        radius=["30%", "75%"],
        center=["25%", "50%"],
        rosetype="radius",
        label_opts=opts.LabelOpts(is_show=False),
    )
    .add(
        "",
        [(i,j)for i,j in zip(x,y)],
        radius=["30%", "75%"],
        center=["75%", "50%"],
        rosetype="area",
    )
    .set_global_opts(title_opts=opts.TitleOpts(title="Pie-玫瑰圖示例"))
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
pie.render_notebook()

 

radius:內半徑和外半徑

 

 

 

完整代碼請掃碼關注公眾號並回復餅圖獲取

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-完-

 

完整代碼請掃碼關注公眾號並回復餅圖獲取




免責聲明!

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



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