日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
使用Pygal在Python中設置數(shù)據(jù)圖的樣式

 

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比仁壽網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式仁壽網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋仁壽地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。

介紹一種更時尚的 Python 繪圖庫。

Python 有很多可以將數(shù)據(jù)可視化的庫。其中一個互動性較強的庫是 Pygal,我認為這個庫適合喜歡漂亮事物的人。它可以生成用戶可以與之交互的漂亮的 SVG(可縮放矢量圖形)文件。SVG 是交互式圖形的標準格式,僅使用幾行 Python 就可以帶來豐富的用戶體驗。

使用 Pygal 進行時尚的 Python 繪圖

在本文中,我們要重新創(chuàng)建多柱狀圖,用來表示 1966 年至 2020 年英國大選的結果:

Pygal plot

在繼續(xù)之前,請注意你可能需要調(diào)整 Python 環(huán)境以使此代碼運行,包括:

  • 運行最新版本的 Python(Linux、Mac 和 Windows 的說明)
  • 確認你運行的是與這些庫兼容的 Python 版本

數(shù)據(jù)可在線獲得,并可使用 pandas 導入:

 
 
 
 
  1. import pandas as pd
  2. df = pd.read_csv('https://anvil.works/blog/img/plotting-in-python/uk-election-results.csv')

現(xiàn)在我們可以繼續(xù)進行了。數(shù)據(jù)如下所示:

 
 
 
 
  1.         year  conservative  labour  liberal  others
  2. 0       1966           253     364       12       1
  3. 1       1970           330     287        6       7
  4. 2   Feb 1974           297     301       14      18
  5. ..       ...           ...     ...      ...     ...
  6. 12      2015           330     232        8      80
  7. 13      2017           317     262       12      59
  8. 14      2019           365     202       11      72

在 Pygal 中進行繪制會以一種易于閱讀的方式顯示。首先,我們以一種簡化柱狀圖定義的方式定義樣式對象。然后我們將自定義樣式以及其他元數(shù)據(jù)傳遞給 Bar 對象:

 
 
 
 
  1. import pygal
  2. from pygal.style import Style
  3.  
  4. custom_style = Style(
  5. colors=('#0343df', '#e50000', '#ffff14', '#929591'),
  6. font_family='Roboto,Helvetica,Arial,sans-serif',
  7. background='transparent',
  8. label_font_size=14,
  9. )
  10.  
  11. c = pygal.Bar(
  12. title="UK Election Results",
  13. style=custom_style,
  14. y_title='Seats',
  15. width=1200,
  16. x_label_rotation=270,
  17. )

然后,我們將數(shù)據(jù)添加到 Bar 對象中:

 
 
 
 
  1. c.add('Conservative', df['conservative'])
  2. c.add('Labour', df['labour'])
  3. c.add('Liberal', df['liberal'])
  4. c.add('Others', df['others'])
  5.  
  6. c.x_labels = df['year']

最后,我們將圖另存為 SVG 文件:

 
 
 
 
  1. c.render_to_file('pygal.svg')

結果是一個交互式 SVG 圖,你可以在此 gif 中看到:

The Python pygal library can generate rich SVG files as seen here

精美簡單,并且效果漂亮。

總結

Python 中的某些繪圖工具需要非常詳細地構建每個對象,而 Pygal 從一開始就為你提供這些。如果你手邊有數(shù)據(jù)并且想做一個干凈、漂亮、簡單的交互式圖表,請嘗試一下 Pygal。


網(wǎng)頁題目:使用Pygal在Python中設置數(shù)據(jù)圖的樣式
標題鏈接:http://www.5511xx.com/article/dhjpspj.html