ggplot是基於R的ggplot2和Python的繪圖系統。它的構建是為了用最少的代碼快速繪制專業又美觀的圖表。
ggplot與python中的pandas有着共生關系。如果打算使用ggplot,最好將數據保存在DataFrames中。即若想使用ggplot,先將數據轉化為dataframe形式,以下我們先來介紹下pandas讀取數據的方式。
一、pandas讀取數據的方式
1、pandas讀取數據庫數據
pandas讀取mysql的函數:
df=pd.read_sql(sql, con),參數sql指查詢數據的sql語句,參數con指mysql的連接。例如,
使用完后記得關閉。
2、pandas讀取CSV,TXT,EXCEL
讀取csv文件時要帶上文件路徑(絕對路徑或相對路徑),參數sep分割號。讀取txt和excel與其類似,df1=pd.read_txt(), df2=pd.read_excel() 。
讀取數據后開始畫圖,以下介紹畫圖步驟以及函數使用說明。
二、ggplot畫圖步驟以及函數
(一)畫圖使用到的函數及方法
1、df = ggplot(data, aes(x, y)) ,給參數data里傳入數據,x里傳入橫坐標數據,y里傳入縱坐標數據,即可畫出一個空白框圖;
2、geom_point(),散點圖;
3、geom_line(),折線圖;
4、geom_point() + geom_line(),折線散點圖;
5、添加線條有多種類型的方法
(1)stat_smooth(color='blue'),添加趨勢線;
(2)geom_abline(intercept, slope, color, size),添加斜線,intercept確定截距,slope確定斜率,效果類似於stat_smooth();
(3)geom_hline(yintercept, color, size),添加水平線,yintercept確定水平線的位置,color確定顏色,size確定線條寬度;
(4)geom_vline(xintercept, color, size),添加垂線;
6、geom_area(),面積圖:ggplot(aes(x='', ymin='', ymax=''),data) + geom_area();
7、geom_bar(),柱狀圖;
8、geom_density(),概率密度函數圖;