- pyecharts是一個由百度開源的數據可視化,憑借着良好的交互性,精巧的圖表設計,得到了眾多開發者的認可。而Python是一門富有表達力的語言,很適合用於數據處理。當數據分析遇上數據可視化時, pyecharts誕生了。
- pyecharts分為v0.5.X和v1兩個大版本, v0.5.X和v1間不兼容,v1是一個全新的版本。(使用版本為v1)。
使用如下代碼來查看安裝的pyecharts版本
import pyecharts print(pyecharts.__version__)
繪圖邏輯
- 選擇圖表類型
- 添加數據
- 設置全局變量
- 顯示及保存圖表
圖表類型(from pyecharts import *)

1、柱狀圖
from pyecharts import Bar #從pyecharts庫中導入Bar子類 bar = Bar("貴州GDP柱狀圖", "副標題") #定義Bar()柱狀圖,同時設置主標題和副標題 bar.add("GDP",["貴陽市", "遵義市", "六盤水市", "安順市", "黔東南州"],[40, 30, 26, 22, 15],is_label_show=True) #調用add()函數添加圖表的數據和設置各種配置項 #bar.show_config() #打印輸出圖表的所有配置項 bar.render() #生成render.html文件,也可以設置路徑和文件名

2、橫向柱狀圖
# -*- coding:utf-8 -*- from pyecharts import Bar bar = Bar("貴州GDP柱狀圖", "副標題") city = ["貴陽市", "遵義市", "六盤水市", "安順市", "黔東南州"] data1 = [40, 30, 26, 22, 15] data2 = [13, 43, 32, 38, 20] bar.add("2017年GDP", city, data1) bar.add("2016年GDP", city, data2, is_convert=True) #bar.show_config() bar.render()

3、折線圖
from pyecharts import Line attr =["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"] v1 =[5, 20, 36, 10, 10, 100] v2 =[55, 60, 16, 20, 15, 80] line =Line("折線圖示例") line.add("商家A", attr, v1, mark_point=["average"]) line.add("商家B", attr, v2, is_smooth=True, mark_line=["max", "average"]) #line.show_config() line.render()

4、折線圖-面積圖
from pyecharts import Line line =Line("折線圖-面積圖示例") line.add("商家A", attr, v1, is_fill=True, line_opacity=0.2, area_opacity=0.4, symbol=None) line.add("商家B", attr, v2, is_fill=True, area_color='#000', area_opacity=0.3, is_smooth=True) #line.show_config() line.render()

5、散點圖
from pyecharts import Scatter scatter = Scatter("散點圖", "一年的降水量與蒸發量") #xais_name是設置橫坐標名稱,這里由於顯示問題,還需要將y軸名稱與y軸的距離進行設置 scatter.add("降水量與蒸發量的散點分布", data1,data2,xaxis_name="降水量",yaxis_name="蒸發量", yaxis_name_gap=40) scatter.render()

6、餅圖
from pyecharts import Pie attr =["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"] v1 =[11, 12, 13, 10, 10, 10] pie =Pie("餅圖示例") pie.add("", attr, v1, is_label_show=True) #pie.show_config() pie.render()

7、中國地圖
from pyecharts import Map province_distribution = {'河南': 45.23, '北京': 37.56, '河北': 21, '遼寧': 12, '江西': 6, '上海': 20, '安徽': 10, '江蘇': 16, '湖南': 9,'浙江': 13, '海南': 2, '廣東': 22, '湖北': 8, '黑龍江': 11, '澳門': 1, '陝西': 11, '四川': 7, '內蒙古': 3, '重慶': 3,'雲南': 6, '貴州': 2, '吉林': 3, '山西': 12, '山東': 11, '福建': 4, '青海': 1, '天津': 1,'其他': 1} provice = list(province_distribution.keys()) values = list(province_distribution.values()) map = Map("中國地圖", '中國地圖', width=1200, height=600) map.add("", provice, values, visual_range=[0, 50], maptype='china', is_visualmap=True,visual_text_color='#000') map.render(path="中國地圖.html")

8、詞雲圖
from pyecharts import WordCloud name =['Sam S Club', 'Macys', 'Amy Schumer', 'Jurassic World', 'Charter Communications', 'Chick Fil A', 'Planet Fitness', 'Pitch Perfect', 'Express', 'Home', 'Johnny Depp', 'Lena Dunham', 'Lewis Hamilton', 'KXAN', 'Mary Ellen Mark', 'Farrah Abraham', 'Rita Ora', 'Serena Williams', 'NCAA baseball tournament', 'Point Break'] value =[10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112, 965, 847, 582, 555, 550, 462, 366, 360, 282, 273, 265] wordcloud =WordCloud(width=1300, height=620) wordcloud.add("", name, value, word_size_range=[20, 100]) #wordcloud.show_config() wordcloud.render()

wordcloud =WordCloud(width=1300, height=620) wordcloud.add("", name, value, word_size_range=[30, 100], shape='diamond') #wordcloud.show_config() wordcloud.render()

