<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          誰(shuí)說(shuō)matplotlib做不出好看的可視化

          共 16006字,需瀏覽 33分鐘

           ·

          2022-01-04 06:11

          ??????關(guān)注我,和老表一起學(xué)Python、云服務(wù)器

          2021年終總結(jié)(含福利)

          大家好,我是老表,今天給大家分享一篇由哈佛在等我呢投稿,主要是對(duì)matplotlib繪制柱狀圖和餅圖的美化,看完你會(huì)發(fā)現(xiàn),matplotlib雖然不能像pyecharts、bokeh等繪制出很精美的圖,甚至是可交互的可視化圖,但是通過(guò)配色、基礎(chǔ)設(shè)置,我們也能用matplotlib繪制出好看、簡(jiǎn)單的可視化圖。

          收藏+點(diǎn)贊,轉(zhuǎn)發(fā)更有愛(ài),元旦快樂(lè)。

          首先需要你的電腦安裝好了Python環(huán)境,并且安裝好了Python開(kāi)發(fā)工具。

          如果你還沒(méi)有安裝,可以參考以下文章:

          如果僅用Python來(lái)處理數(shù)據(jù)、爬蟲(chóng)、數(shù)據(jù)分析或者自動(dòng)化腳本、機(jī)器學(xué)習(xí)等,建議使用Python基礎(chǔ)環(huán)境+jupyter即可,安裝使用參考Windows/Mac 安裝、使用Python環(huán)境+jupyter notebook

          如果想利用Python進(jìn)行web項(xiàng)目開(kāi)發(fā)等,建議使用Python基礎(chǔ)環(huán)境+Pycharm,安裝使用參考:Windows下安裝、使用Pycharm教程,這下全了?和?Mac下玩轉(zhuǎn)Python-安裝&使用Python/PyCharm?。

          本文相關(guān)源碼和字體,我都已經(jīng)上傳到了百度云,大家在微信公眾號(hào)簡(jiǎn)說(shuō)編程回復(fù):代碼,即可獲取下載地址。

          點(diǎn)擊,關(guān)注簡(jiǎn)說(shuō)編程,回復(fù):代碼

          • 縱向柱形圖(按升序排列)

          • 縱向柱形圖(類(lèi)別與數(shù)據(jù)標(biāo)簽反轉(zhuǎn),按降序排列)

          • 縱向柱形圖(類(lèi)別與數(shù)據(jù)標(biāo)簽反轉(zhuǎn),按降序排列,顏色編碼也反轉(zhuǎn))

          • 給縱向柱形圖添加網(wǎng)格線

          • 橫向柱形圖

          • 默認(rèn)生成的餅圖

          • 自定義配色的餅圖

          • 調(diào)整角度的餅圖

          • 調(diào)整角度讓標(biāo)簽可以在內(nèi)部不重疊顯示的餅圖

          • 炸裂出來(lái)的餅圖

          縱向柱形圖(按升序排列)

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(12,6),dpi?=?1000)
          data?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          labels?=?["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]

          #?數(shù)據(jù)順序反轉(zhuǎn)
          #?data.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          #?labels.reverse()

          N?=?12
          x?=?np.arange(N)

          #?自定義每根柱子的顏色
          colors?=?["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]
          #?顏色順序反轉(zhuǎn)
          #?colors.reverse()
          #?繪制縱向柱形圖
          plt.bar(range(len(data)),?data,?tick_label=labels,color?=?colors)

          #?plt.barh(range(len(data)),?data,?tick_label=labels,color?=?colors)
          #?添加大標(biāo)題
          plt.title("2021年各月份銷(xiāo)售業(yè)績(jī)(萬(wàn)元)",fontsize=20,**Fs)?

          #?給X軸定義標(biāo)簽
          #?plt.xlabel("月份",fontsize=15)

          #?給Y軸定義標(biāo)簽
          #?plt.ylabel("銷(xiāo)售額(萬(wàn)元)",fontsize=15)

          #?依次給每根柱子添加數(shù)據(jù)標(biāo)簽,并把字體設(shè)置為新羅馬體(教科書(shū)、論文的數(shù)字、公式一般都用新羅馬體)
          for?i,j?in?zip(x,?data):
          ????plt.text(i,?j+0.05,?'%.0f'?%?j,?ha='center',?va=?'bottom',fontsize=15,**TNR)

          #?為了美觀,不顯示畫(huà)布的黑色邊框
          [axes.spines[loc_axis].set_visible(False)?for?loc_axis?in?['top','right','bottom','left']]

          #?不顯示Y軸坐標(biāo)
          axes.set_yticks([])

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\test.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.jpg",?format="png")

          #?繪圖
          plt.show()

          縱向柱形圖(類(lèi)別與數(shù)據(jù)標(biāo)簽反轉(zhuǎn),按降序排列)

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(12,6),dpi?=?1000)
          data?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          labels?=?["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]

          #?數(shù)據(jù)順序反轉(zhuǎn)
          data.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          labels.reverse()

          N?=?12
          x?=?np.arange(N)

          #?自定義每根柱子的顏色
          colors?=?["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]
          #?顏色順序反轉(zhuǎn)
          #?colors.reverse()
          #?繪制縱向柱形圖
          plt.bar(range(len(data)),?data,?tick_label=labels,color?=?colors)

          #?plt.barh(range(len(data)),?data,?tick_label=labels,color?=?colors)
          #?添加大標(biāo)題
          plt.title("2021年各月份銷(xiāo)售業(yè)績(jī)(萬(wàn)元)",fontsize=20,**Fs)?

          #?給X軸定義標(biāo)簽
          #?plt.xlabel("月份",fontsize=15)

          #?給Y軸定義標(biāo)簽
          #?plt.ylabel("銷(xiāo)售額(萬(wàn)元)",fontsize=15)

          #?依次給每根柱子添加數(shù)據(jù)標(biāo)簽,并把字體設(shè)置為新羅馬體(教科書(shū)、論文的數(shù)字、公式一般都用新羅馬體)
          for?i,j?in?zip(x,?data):
          ????plt.text(i,?j+0.05,?'%.0f'?%?j,?ha='center',?va=?'bottom',fontsize=15,**TNR)

          #?為了美觀,不顯示畫(huà)布的黑色邊框
          [axes.spines[loc_axis].set_visible(False)?for?loc_axis?in?['top','right','bottom','left']]

          #?不顯示Y軸坐標(biāo)
          axes.set_yticks([])

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\test.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.jpg",?format="png")

          #?繪圖
          plt.show()

          縱向柱形圖(類(lèi)別與數(shù)據(jù)標(biāo)簽反轉(zhuǎn),按降序排列,顏色編碼也反轉(zhuǎn))

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(12,6),dpi?=?1000)
          data?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          labels?=?["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]

          #?數(shù)據(jù)順序反轉(zhuǎn)
          data.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          labels.reverse()

          N?=?12
          x?=?np.arange(N)

          #?自定義每根柱子的顏色
          colors?=?["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]
          #?顏色順序反轉(zhuǎn)
          colors.reverse()
          #?繪制縱向柱形圖
          plt.bar(range(len(data)),?data,?tick_label=labels,color?=?colors)

          #?plt.barh(range(len(data)),?data,?tick_label=labels,color?=?colors)
          #?添加大標(biāo)題
          plt.title("2021年各月份銷(xiāo)售業(yè)績(jī)(萬(wàn)元)",fontsize=20,**Fs)?

          #?給X軸定義標(biāo)簽
          #?plt.xlabel("月份",fontsize=15)

          #?給Y軸定義標(biāo)簽
          #?plt.ylabel("銷(xiāo)售額(萬(wàn)元)",fontsize=15)

          #?依次給每根柱子添加數(shù)據(jù)標(biāo)簽,并把字體設(shè)置為新羅馬體(教科書(shū)、論文的數(shù)字、公式一般都用新羅馬體)
          for?i,j?in?zip(x,?data):
          ????plt.text(i,?j+0.05,?'%.0f'?%?j,?ha='center',?va=?'bottom',fontsize=15,**TNR)

          #?為了美觀,不顯示畫(huà)布的黑色邊框
          [axes.spines[loc_axis].set_visible(False)?for?loc_axis?in?['top','right','bottom','left']]

          #?不顯示Y軸坐標(biāo)
          axes.set_yticks([])

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\test.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.jpg",?format="png")

          #?繪圖
          plt.show()

          給縱向柱形圖添加網(wǎng)格線

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(12,6),dpi?=?1000)
          data?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          labels?=?["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]

          #?數(shù)據(jù)順序反轉(zhuǎn)
          #?data.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          #?labels.reverse()

          N?=?12
          x?=?np.arange(N)

          #?自定義每根柱子的顏色
          colors?=?["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]
          #?顏色順序反轉(zhuǎn)
          #?colors.reverse()
          #?繪制縱向柱形圖
          plt.bar(range(len(data)),?data,?tick_label=labels,color?=?colors)

          #?plt.barh(range(len(data)),?data,?tick_label=labels,color?=?colors)
          #?添加大標(biāo)題
          plt.title("2021年各月份銷(xiāo)售業(yè)績(jī)(萬(wàn)元)",fontsize=20,**Fs)?

          #?給X軸定義標(biāo)簽
          #?plt.xlabel("月份",fontsize=15)

          #?給Y軸定義標(biāo)簽
          #?plt.ylabel("銷(xiāo)售額(萬(wàn)元)",fontsize=15)

          #?依次給每根柱子添加數(shù)據(jù)標(biāo)簽,并把字體設(shè)置為新羅馬體(教科書(shū)、論文的數(shù)字、公式一般都用新羅馬體)
          for?i,j?in?zip(x,?data):
          ????plt.text(i,?j+0.05,?'%.0f'?%?j,?ha='center',?va=?'bottom',fontsize=15,**TNR)

          #?為了美觀,不顯示畫(huà)布的黑色邊框
          [axes.spines[loc_axis].set_visible(False)?for?loc_axis?in?["top","bottom","left","right"]]

          #?不顯示Y軸坐標(biāo)
          axes.set_yticks([])

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\test.svg",?format?=?"svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.png",?format?=?"png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.jpg",?format?=?"png")

          #?添加網(wǎng)格
          plt.grid(axis?=?"y")

          #?自定義網(wǎng)格線形狀
          plt.grid(c?=?"gold")

          #?定義網(wǎng)格線的線型和線寬,jupyter?notebook?有提示
          #?'-',?'--',?'-.',?':',?'None',?'?',?'',?'solid',?'dashed',?'dashdot',?'dotted'
          plt.grid(linestyle?=?"dotted",?linewidth?=?0.5)
          #?繪圖
          plt.show()

          橫向柱形圖

          #?導(dǎo)入相關(guān)的包
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          HP?=?{'fontname':'STHUPO'}

          #?自定義每根柱子的顏色
          colors?=?["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]

          #?設(shè)置畫(huà)布大小
          figure,axes?=?plt.subplots(1,1,figsize?=?(12,10),dpi?=?80)
          data_h?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          lable_h?=?["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]


          #?依次給每根柱子添加數(shù)據(jù)標(biāo)簽,并把字體設(shè)置為新羅馬體(教科書(shū)、論文的數(shù)字、公式一般都用新羅馬體)
          N?=?len(data_h)
          x?=?np.arange(N)
          for?i,j?in?zip(x,?data_h):
          ????plt.text(j+50,?i+0.1,?"%s"?%j,?ha='center',?va?=?"top",fontsize?=?15,**TNR)
          ????
          #?數(shù)據(jù)順序反轉(zhuǎn)
          #?data_h.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          #?lable_h.reverse()
          #?顏色順序反轉(zhuǎn)
          #?colors.reverse()

          #?為了美觀,不顯示畫(huà)布的黑色邊框
          [axes.spines[loc_axis].set_visible(False)?for?loc_axis?in?["top","bottom","left","right"]]

          #?添加大標(biāo)題
          plt.title("2021年各月份銷(xiāo)售業(yè)績(jī)(萬(wàn)元)",fontsize?=?28,**HP)?

          #?添加網(wǎng)格
          #?plt.grid(axis?=?"x")

          plt.barh(x,?data_h,?height?=?0.7,?tick_label=lable_h,color?=?colors)

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\test.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\test.jpg",?format="png")

          plt.show()

          默認(rèn)生成的餅圖

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?["Fangsong"]
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(6,6),dpi?=?120)

          #?構(gòu)造數(shù)據(jù)
          y?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          label=["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]

          #?繪圖
          plt.pie(y,labels=label)

          #?添加大標(biāo)題,并設(shè)置字號(hào)大小,以及定義所用字體
          plt.title("各月份銷(xiāo)售占比",fontsize?=?28)

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.jpg",?format="png")

          #?可視化呈現(xiàn)
          plt.show()

          自定義配色的餅圖

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(15,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(15,6),dpi?=?120)

          y?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          label=["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]?#?設(shè)置餅圖標(biāo)簽

          #?數(shù)據(jù)順序反轉(zhuǎn)
          y.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          label.reverse()

          #?自定義餅圖各扇區(qū)的顏色
          colors=["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]

          plt.pie(y,
          ????????labels=label,?#?設(shè)置分組類(lèi)別標(biāo)簽
          ????????colors?=?colors,??#自定義每個(gè)扇區(qū)的顏色
          #?????????explode=(0,?0.2,?0,?0,0,0,?0,0,0,?0,0,0),?#?讓比值較大的扇區(qū)炸裂開(kāi)來(lái),占比越大,距離圓心越遠(yuǎn)
          ????????autopct='%.2f%%',?#?讓標(biāo)簽以百分比形式顯示,且精確到兩位小數(shù)
          ????????labeldistance?=?1.1,?#?分組名稱(chēng)標(biāo)簽相對(duì)圓心的距離位置
          ????????pctdistance?=?0.9,?#?數(shù)值標(biāo)簽相對(duì)圓心的距離位置
          #?????????shadow?=?True,?#?添加陰影
          ????????radius?=?1,??#?餅圖的相對(duì)半徑
          ????????startangle?=?90,??#?繪圖的起始角度
          ????????counterclock?=?False??#?時(shí)針?lè)较?/span>
          ???????)

          #?添加大標(biāo)題,并設(shè)置字號(hào)大小,以及定義所用字體
          plt.title("各月份銷(xiāo)售占比",fontsize?=?28,**HP)

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.jpg",?format="png")

          #?繪圖
          plt.show()

          調(diào)整角度的餅圖

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(6,6),dpi?=?120)

          y?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          label=["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]?#?設(shè)置餅圖標(biāo)簽

          #?數(shù)據(jù)順序反轉(zhuǎn)
          y.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          label.reverse()

          #?自定義餅圖各扇區(qū)的顏色
          colors=["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]

          plt.pie(y,
          ????????labels=label,?#?設(shè)置分組類(lèi)別標(biāo)簽
          ????????colors?=?colors,??#自定義每個(gè)扇區(qū)的顏色
          #?????????explode=(0,?0.2,?0,?0,0,0,?0,0,0,?0,0,0),?#?讓比值較大的扇區(qū)炸裂開(kāi)來(lái),占比越大,距離圓心越遠(yuǎn)
          ????????autopct='%.2f%%',?#?讓標(biāo)簽以百分比形式顯示,且精確到兩位小數(shù)
          ????????labeldistance?=?1.1,?#?分組名稱(chēng)標(biāo)簽相對(duì)圓心的距離位置
          ????????pctdistance?=?0.9,?#?數(shù)值標(biāo)簽相對(duì)圓心的距離位置
          #?????????shadow?=?True,?#?添加陰影
          ????????radius?=?1,??#?餅圖的相對(duì)半徑
          ????????startangle?=?90,??#?繪圖的起始角度
          #?????????counterclock?=?False??#?時(shí)針?lè)较?/span>
          ???????)

          #?添加大標(biāo)題,并設(shè)置字號(hào)大小,以及定義所用字體
          plt.title("各月份銷(xiāo)售占比",fontsize?=?28,**HP)

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.jpg",?format="png")

          #?繪圖
          plt.show()

          調(diào)整角度讓標(biāo)簽可以在內(nèi)部不重疊顯示的餅圖

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(6,6),dpi?=?120)

          y?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          label=["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]?#?設(shè)置餅圖標(biāo)簽

          #?數(shù)據(jù)順序反轉(zhuǎn)
          y.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          label.reverse()

          #?自定義餅圖各扇區(qū)的顏色
          colors=["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]

          plt.pie(y,
          ????????labels=label,?#?設(shè)置分組類(lèi)別標(biāo)簽
          ????????colors?=?colors,??#自定義每個(gè)扇區(qū)的顏色
          #?????????explode=(0,?0.2,?0,?0,0,0,?0,0,0,?0,0,0),?#?讓比值較大的扇區(qū)炸裂開(kāi)來(lái),占比越大,距離圓心越遠(yuǎn)
          ????????autopct='%.2f%%',?#?讓標(biāo)簽以百分比形式顯示,且精確到兩位小數(shù)
          ????????labeldistance?=?1.1,?#?分組名稱(chēng)標(biāo)簽相對(duì)圓心的距離位置
          ????????pctdistance?=?0.9,?#?數(shù)值標(biāo)簽相對(duì)圓心的距離位置
          #?????????shadow?=?True,?#?添加陰影
          ????????radius?=?1,??#?餅圖的相對(duì)半徑
          ????????startangle?=?180,??#?繪圖的起始角度
          #?????????counterclock?=?False??#?時(shí)針?lè)较?/span>
          ???????)

          #?添加大標(biāo)題,并設(shè)置字號(hào)大小,以及定義所用字體
          plt.title("各月份銷(xiāo)售占比",fontsize?=?28,**HP)

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.jpg",?format="png")

          #?繪圖
          plt.show()

          炸裂出來(lái)的餅圖

          #?解決部分?jupyter?notebook?中出圖不成功
          %matplotlib?inline

          #?導(dǎo)入相關(guān)庫(kù)
          import?numpy?as?np
          import?matplotlib.pyplot?as?plt

          #?解決中文亂碼
          plt.rcParams['font.sans-serif']?=?['SimHei']
          #?顯示負(fù)號(hào)
          plt.rcParams['axes.unicode_minus']?=?False

          #?字體
          TNR?=?{'fontname':'Times?New?Roman'}
          Fs?=?{'fontname':'Fangsong'}

          #?設(shè)置畫(huà)布大小
          plt.figure(figsize=(12,6))
          figure,axes?=?plt.subplots(1,1,figsize?=?(6,6),dpi?=?120)

          #?構(gòu)造數(shù)據(jù)
          y?=?[100,?130,?169,?220,?286,?372,?484,?629,?818,?1063,?1382,?1797]
          label=["1月",?"2月",?"3月",?"4月",?"5月",?"6月",?"7月",?"8月",?"9月",?"10月",?"11月",?"12月"]

          #?數(shù)據(jù)順序反轉(zhuǎn)
          y.reverse()
          #?標(biāo)簽順序反轉(zhuǎn)
          label.reverse()

          #?自定義餅圖各扇區(qū)的顏色
          colors=["#4E79A7",??"#A0CBE8",??"#F28E2B",??"#FFBE7D",??"#59A14F",??"#8CD17D",??"#B6992D",??"#F1CE63",??"#499894",??"#86BCB6",??"#E15759",??"#E19D9A"]

          #?開(kāi)始繪圖
          plt.pie(y,
          ????????labels=label,?#?設(shè)置分組類(lèi)別標(biāo)簽
          ????????colors?=?colors,??#自定義每個(gè)扇區(qū)的顏色
          ????????explode=(0.2,?0.1,?0,?0,0,0,?0,0,0,?0,0,0),?#?讓比值較大的扇區(qū)炸裂開(kāi)來(lái),占比越大,距離圓心越遠(yuǎn)
          ????????autopct='%.2f%%',?#?讓標(biāo)簽以百分比形式顯示,且精確到兩位小數(shù)
          ????????labeldistance?=?1.1,?#?分組名稱(chēng)標(biāo)簽相對(duì)圓心的距離位置
          ????????pctdistance?=?0.9,?#?數(shù)值標(biāo)簽相對(duì)圓心的距離位置
          #?????????shadow?=?True,?#?添加陰影
          ????????radius?=?1,??#?餅圖的相對(duì)半徑
          ????????startangle?=?90,??#?繪圖的起始角度
          ????????counterclock?=?False??#?時(shí)針?lè)较?/span>
          ???????)

          #?添加大標(biāo)題,并設(shè)置字號(hào)大小,以及定義所用字體
          plt.title("各月份銷(xiāo)售占比",fontsize?=?28,**HP)

          #?輸出為矢量圖,不管放大或縮小,圖形皆不會(huì)失真
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.svg",?format="svg")
          #?輸出為常規(guī)的png格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.png",?format="png")
          #?輸出為常規(guī)的jpg格式
          plt.savefig(r"C:\Users\Administrator\Desktop\matplotlib餅圖.jpg",?format="png")

          #?可視化呈現(xiàn)
          plt.show()

          延申出來(lái)的學(xué)習(xí)資料:https://www.bilibili.com/video/BV11Q4y1f7VH

          如何找到我:

          瀏覽 76
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  澳门精品一区二区三区 | 中国女人如毛片 | 日韩黄色三级A | 日日无码视频 | 天天中文字幕 |