您好,登錄后才能下訂單哦!
這篇文章主要講解了“Python Pandas庫的使用方法是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Python Pandas庫的使用方法是什么”吧!
剛接觸Python的新手、小白,可以復制下面的鏈接去免費觀看Python的基礎入門教學視頻
https://v.douyu.com/author/y6AZ4jn9jwKW
在Python中,常見的數據可視化庫有3個:
matplotlib:最常用的庫,可以算作可視化的必備技能庫,比較復雜,api多,學起來不太容易。
seaborn:是重構于matplotlib基礎上,可以滿足可視化需求,更特殊的需求還是需要學習matplotlib。
pyecharts:上面的兩個庫都是靜態的可視化庫,而pyecharts有很好的網絡兼容性,可以做到可視化的動態效果。并且種類也比較豐富。這類這個圖,就非常厲害:畫圖神器pyecharts-旭日圖
Pandas:而今天要講的是Pandas的可視化,Pandas主要作為數據分析的庫,雖然沒有上述三個庫那個強大,但是勝在方便,在數據分析的過程中,只要一行代碼就能實現。也非常漂亮。
熊貓中,有11個比較常見的圖形可視化,還有幾個比較進階的,我們一個一個看看怎么畫的
import pandas as pd import numpy as np df= pd.DataFrame(np.random.rand(10, 4), columns=['A','B','C','D'])
df.plot.bar()
stack = True,畫堆疊柱狀圖
df.plot.bar(stacked=True)
同樣,stacked = True,畫堆疊柱狀圖
df.plot.barh(stacked=True)
df.plot.area(stacked=True,alpha = 0.9)
df.plot.density()
換個數據集
df = pd.DataFrame({'A': np.random.randn(1000) + 1, 'B': np.random.randn(1000), 'C': np.random.randn(1000) - 1}, columns=['A', 'B', 'C']) df.plot.hist(bins=200)
df.plot.hist(stacked=True, bins=20)
df= pd.DataFrame(np.random.rand(1000, 4), columns=['A','B','C','D']) df.diff().hist(color='k', alpha=0.7, bins=50)
df= pd.DataFrame(np.random.rand(100, 4), columns=['A','B','C','D']) df.plot.box()
df.plot.scatter(x='A',y='B')
df = pd.DataFrame(np.random.randn(1000, 2), columns=['a', 'b']) df['b'] = df['b'] + np.arange(1000) df.plot.hexbin(x='a', y='b', gridsize=25)
series = pd.Series(3 * np.random.rand(4), index=['a', 'b', 'c', 'd'], name='series') series.plot.pie(figsize=(6, 6))
from pandas.plotting import scatter_matrix df = pd.DataFrame(np.random.randn(1000, 4), columns=['a', 'b', 'c', 'd']) scatter_matrix(df, alpha=0.2, figsize=(6, 6), diagonal='kde')
data = pd.read_csv('C:/Users/wuzhengxiang/Desktop/iris.csv') pd.plotting.andrews_curves(data , 'Name')
andrews_curves(data, 'Name', colormap='winter')
from pandas.plotting import parallel_coordinates parallel_coordinates(data, 'Name', colormap='gist_rainbow')
from pandas.plotting import lag_plot df= pd.Series(0.1 * np.random.rand(1000) + 0.9 * np.sin(np.linspace(-99 * np.pi, 99 * np.pi, num=1000))) lag_plot(df)
直接畫圖,預設為折線圖
df= pd.DataFrame(np.random.rand(12, 4), columns=['A','B','C','D']) df.plot()
df.plot(subplots=True,layout=(2, 2), figsize=(15, 8))
df= pd.DataFrame(np.random.rand(1000, 4), columns=['A','B','C','D']) df.plot()
df.plot(subplots=True,layout=(2, 2), figsize=(15, 8))
s = pd.Series(np.random.uniform(size=100)) pd.plotting.bootstrap_plot(s)
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html https://pandas.pydata.org/pandas-docs/version/0.18.1/visualization.html
DataFrame.plot(x=None, y=None, kind='line', ax=None, subplots=False, sharex=None, sharey=False, layout=None, figsize=None, use_index=True, title=None, grid=None, legend=True, style=None, logx=False, logy=False, loglog=False, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, fontsize=None, colormap=None, position=0.5, table=False, yerr=None, xerr=None, stacked=True/False, sort_columns=False, secondary_y=False, mark_right=True, **kwds)
注意:每種繪圖類型都有相對應的方法:df.plot(kind = 'line' )與df.plot.line()等價
x:標簽或位置,默認為None#指數據列的標簽或位置參數
y:標簽,位置或標簽列表,位置,默認值無
種類:str#繪圖類型
'line':線圖(默認)#折線圖
'bar':垂直條形圖。條形圖。stacked為True時為堆疊的柱狀圖
'barh':水平條形圖
'hist':histogram#直方圖(數值頻率分布)
'box':boxplot#箱型圖
'kde':內核密度估計圖#密度圖,主要對柱狀圖添加內核概率密度線
'密度':與'kde'相同
'area':area plot#與x軸所圍的區域圖(面積圖)。Stacked= True時,每列必須全部為正或負值,stacked = False時,對數據沒有要求
'pie':pie plot#餅圖。數值必須為正值,需指定Y軸或者subplots = True
'scatter':散點圖#散點圖。需指定X軸Y軸
'hexbin':hexbin圖#蜂巢圖。需指定X軸Y軸
'hexbin':hexbin圖#蜂巢圖。需指定X軸Y軸
ax:matplotlib軸對象,默認值None#**子圖(axes,也可以理解成坐標軸)要在其上進行交易的matplotlib子圖對象。如果沒有設置,則使用當前matplotlib子圖**其中,變量和函數通過改變figure和axes中的元素(例如:title,label,點和線等等)一起描述figure和axes,也就是在畫布上繪圖。
子圖:布爾值,默認為False#是否對列分別作子圖
sharex:布爾值,默認值為true,如果ax為None False#如果ax為None,則設為為True,否則為False
如果subplots = True,則共享x軸并將一些x軸標簽設置為不可見;如果ax為None則默認為True,否則為False。請注意,同時傳遞ax和sharex = True將更改圖形中所有軸的所有x軸標簽!
sharey:布爾值,默認為False#如果有子圖,子圖共y軸刻度,標簽
如果subplots = True,則共享y軸并將一些y軸標簽設置為不可見
layout:用于子圖的元組(行,列)#子圖的行列布局
figsize:以英寸為單位的元組(寬度,高度)
use_index:布爾值,默認為True
title:字符串#圖片的標題用字符串
地塊標題
grid:布爾值,默認值None#圖片是否有網格
legend:False / True /'reverse'#子圖的圖例(交替為True)
樣式:列表或字典#對每列折線圖設置線的類型
logx:布爾值,默認為False。
類型:布爾值,默認為False
loglog:布爾值,默認為False#同時設置x,y軸刻度是否取對數
xticks:sequence#設置x軸刻度值,序列形式(某些列表)
yticks:sequence#設置y軸刻度,序列形式(幾種列表)
xlim:float / 2-tuple / list#設置坐標軸的范圍。數值(變量),列表或元組(區間范圍)
ylim:浮點數/ 2元組/列表
rot:int,默認值None#設置軸標簽(軸刻度)的顯示旋轉度數
fontsize:int,默認值None#設置軸刻度的字體大小
colormap:str或matplotlib colormap對象,默認值為None。
colorbar:布爾值,可選#柱子顏色
如果為True,則繪制顏色條(僅與“散布”圖和“六邊形”圖有關)
position:float#條形圖的對齊方式,取值范圍[0,1],即左下端到右上端替換0.5(中間對齊)
layout:tuple(可選)#布局。layout=(2,3)兩行三列,layout =(2,-1)兩行自適應列數
例如。df.plot(subplots = True,layout =(2,-1),sharex = False)
table:布爾值,Series或DataFrame,默認為False#圖下添加表。如果為True,則使用DataFrame中的數據圖表,并且數據將被旋轉放置到matplotlib的布局。。
yer:DataFrame,Series,類數組,dict和str
有關詳細信息,請參見使用誤差線繪圖。
xerr:與yerr相同的類型。
堆疊:布爾值,線形圖和條形圖默認為False,面積圖為True。如果為True,則創建堆積圖。#前面有介紹
sort_columns:布爾值,默認值為False。
secondary_y:布爾值或序列,默認為False#設置第二個y軸(右輔助y軸)
是否在次要y軸上繪制如果是 列表/元組,則在次要y軸上繪制哪些列
mark_right:布爾值,默認為True
感謝各位的閱讀,以上就是“Python Pandas庫的使用方法是什么”的內容了,經過本文的學習后,相信大家對Python Pandas庫的使用方法是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。