电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python可視化分析的實現(matplotlib、seaborn、ggplot2)

瀏覽:6日期:2022-06-28 14:16:28
一、matplotlib庫1、基本繪圖命令

import matplotlib.pyplot as pltplt.figure(figsize=(5,4)) #設置圖形大小plt.rcParams[’axes.unicode_minus’]=False #正常顯示負號plt.rcParams[’font.sans-self’]=[’Kai Ti’] #設置字體,這里是楷體,SimHei表示黑體#基本統計圖plt.bar(x,y);plt.pie(y,labels=x);plt.plot(x,y);plt.hist(df.身高) #若參數density=True則是頻率直方圖3、圖形參數設置

顏色: plt.plot(x,y,c=‘red’) #參數c控制顏色橫縱坐標軸范圍: plt.xlim(0,100),plt.ylim(0,8)橫縱坐標軸名稱: plt.xlabel(),plt.ylabel()橫縱坐標軸刻度: plt.xticks(range(len(x)),x)線形和符號: plt.plot(x,y,linestyle=’?’,marker=‘o’) #實線:’-’ ;虛線:’?’; ’.’指點線附加參考線: plt.axvline(x=1);plt.axhline(y=4)文字標注: plt.text(3,5,‘peak point’) #參數表示:坐標+文字圖例: plt.plot(x,y,label=‘折線’);plt.legend()分面繪圖:

#一行兩圖plt.subplot(121)plt.bar(x,y)plt.subplot(122)plt.plot(x,y)#一頁多圖fig,ax=plt.subplots(2,2,figsize=(15,12)) # 2行2列放4個圖,figsize控制大小ax[0,0].bar(x,y);ax[0,1].plot(x,y);ax[1,0].pie(x,y);ax[1,1].plot(y,’.’,linewidth=3)

具體的參數color、linestyle、圖例位置設置

顏色字符(color)

字符 代表顏色 r 紅色 b 藍色 g 綠色 w 白色 c 青色 m 洋紅 y 黃色 k 黑色

風格字符(linestyle)

字符 代表風格 - (一個連字符) 實線 ? (兩個連字符) 虛線 -. 點劃線 : 點虛線 ’ ’ 留空,空格

loc 參數(以matplotlib添加圖例為例說明位置)

loc string loc code 位置 'best' 0 右上角(默認) “upper right” 1 右上角 “upper left” 2 左上角 “lower left” 3 左下角 “lower right” 4 右下角 'right' 5 中右側 “center left” 6 中左側 “center right” 7 中右側 “low center” 8 中下方 “upper center” 9 中上方 “center” 10 中間

4、特殊統計圖的繪制

4.1 數學函數圖

import matplotlib.pyplot as plt #加載基本繪圖包plt.rcParams[’font.sans-serif’]=[’SimHei’]; #SimHei黑體plt.rcParams[’axes.unicode_minus’]=False; #正常顯示圖中負號import numpy as np #加載軟件包numpyimport math #加載軟件包mathx=np.linspace(0,2*math.pi);x #生成[0,2*pi]序列 ,作為橫坐標取值plt.plot(x,np.sin(x)) #y=sinx 正弦函數plt.plot(x,np.cos(x)) #y=cosx 余弦函數plt.plot(x,np.log(x)) #y=lnx #對數函數plt.plot(x,np.exp(x)) #y=e^x 指數函數

數學函數也可以用pandas庫繪制,可詳見我的另一篇博客:文章鏈接

#極坐標圖t=np.linspace(0,2*math.pi) x=3*np.sin(t); y=5*np.cos(t) plt.plot(x,y); plt.text(0,0,r’$frac{x^2}{3^2}+frac{y^2}{5^2}=1$’,fontsize=20) #python借鑒的LATEX的格式,可以直接在圖中添加公式

python可視化分析的實現(matplotlib、seaborn、ggplot2)

4.2 氣泡圖

import pandas as pddf=pd.read_excel(’data.xlsx’)plt.scatter(df[’身高’], df[’體重’], s=df[’支出’]) #在散點圖的基礎上加上點的大小,例子中s=df[’支出’]就是將指各樣本點支出越多,點面積就越大

python可視化分析的實現(matplotlib、seaborn、ggplot2)

4.3 三維曲面圖

from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig)X = np.arange(-4, 4, 0.5) Y = np.arange(-4, 4, 0.5) X, Y = np.meshgrid(X, Y)Z = (X**2+ Y**2)ax.plot_surface(X, Y, Z) #該圖像就是表示函數z=x^2+y^2

python可視化分析的實現(matplotlib、seaborn、ggplot2)

二、seaborn庫1、常用統計圖

1.1 箱線圖

import seaborn as sns #加載軟件包seaborn#箱線圖sns.boxplot(x=df[’身高’])#豎著放的箱線圖,也就是將 x 換成 ysns.boxplot(y=df[’身高’]) #分組繪制箱線圖sns.boxplot(x=’性別’, y=’身高’,data=df) #將身高按性別分組后繪制

python可視化分析的實現(matplotlib、seaborn、ggplot2)

1.2 小提琴圖

sns.violinplot(x=’性別’, y=’支出’, data=df) #箱線圖的變種,可以加第三個類別參數hue

python可視化分析的實現(matplotlib、seaborn、ggplot2)

1.3 點圖

sns.stripplot(x=’性別’, y=’身高’, data=df, jitter=True) #分組的數據(定性+定量)畫的點圖,jitter參數為True表示將點分散開來,默認為false

python可視化分析的實現(matplotlib、seaborn、ggplot2)

1.4 條圖與計數圖

#條圖,即柱形圖sns.barplot(x=’性別’, y=’身高’, data=df, ci=0, palette='Blues_d') #palette用于設置顏色#計數圖sns.countplot(x=’性別’, hue='開設', data=df) #都是分類變量

python可視化分析的實現(matplotlib、seaborn、ggplot2)

1.5 分組圖

#按性別、開設依次分組后計數,aspect指比例大小sns.factorplot(x=’性別’, col='開設', col_wrap=3, data=df, kind='count', size=2.5, aspect=.8)

python可視化分析的實現(matplotlib、seaborn、ggplot2)

1.6 概率分布圖

#displot:直方圖+密度函數,bins表示分的組數,kde=False表示不畫出密度曲線,rug表示有數據的地方就標注出來sns.distplot(df[’身高’], kde=True, bins=20, rug=True)#自定義漸進正態函數圖像def norm_sim2(N=1000,n=10): xbar=np.zeros(N) for i in range(N): xbar[i]=np.random.uniform(0,1,n).mean()#[0,1]上均勻隨機數均值 sns.distplot(xbar,bins=50) print(pd.DataFrame(xbar).describe().T)norm_sim2(N=100000,n=50)

python可視化分析的實現(matplotlib、seaborn、ggplot2)

2、聯合圖

sns.jointplot(x=’身高’, y=’體重’, data=df)#畫的散點圖+單個變量的直方圖

python可視化分析的實現(matplotlib、seaborn、ggplot2)

3、配對圖

#針對多個變量,兩兩配對,畫在一起sns.pairplot(df[[’身高’,’體重’,’支出’]]) #將各變量間關系共放一張圖上,在多元統計分析中很有用

python可視化分析的實現(matplotlib、seaborn、ggplot2)

三、ggplot庫

ggplot庫是采用的繪畫中圖層的思想,即一層一層往上疊加,先畫好坐標,再添線,再增加其他操作,最后用 + 號連接起來,操作起來更有邏輯章法,語句簡潔。ggplot新包是plotnine,與R語言的ggplot2對應,使用起來更方便,故直接import plotnine即可,里面的函數使用與ggplot是基本一樣的

1、圖層畫法+常用圖形

繪制直角坐標系和字體

GP=ggplot(aes(x=’身高’,y=’體重’),data=df)

python可視化分析的實現(matplotlib、seaborn、ggplot2)

在此基礎上增加線圖

GP + geom_line()+ theme_grey(base_family = ’SimHei’)#還可以再往上疊加,+geom_point()就是在折線圖基礎上加上散點圖

python可視化分析的實現(matplotlib、seaborn、ggplot2)

改為有三個變量的點圖,不同類型畫不同記號(shape)/顏色(color)

ggplot(df,aes(x=’身高’,y=’體重’,color=’性別’))+geom_point()+ theme_grey(base_family = ’SimHei’)

python可視化分析的實現(matplotlib、seaborn、ggplot2)

改為分面圖:用pandas繪制分組統計圖還需要先groupby,ggplot一步到位更加簡便

ggplot(df,aes(x=’身高’,y=’體重’))+geom_point()+facet_wrap(’性別’) + theme_grey(base_family = ’SimHei’) #facet_wrap(’性別’)表示按性別分成兩組畫分面圖

python可視化分析的實現(matplotlib、seaborn、ggplot2)

此外,+theme_bw()等可以設置圖片背景、主題

2、快速繪圖

ggplot也可以像pandas一樣,在qplot函數中設置參數geom的取值而直接改變圖像類型

#快速繪制直方圖qplot(x=’身高’,data=df, geom=’histogram’)+ theme_grey(base_family = ’SimHei’)#快速繪制柱形圖qplot(’開設’,data=df, geom=’bar’)+ theme_grey(base_family = ’SimHei’)#默認散點圖qplot(’身高’, ’體重’, data=df, color=’性別’) + theme_grey(base_family = ’SimHei’)

以上是基于《python數據分析基礎教程 王斌會》整理的學習筆記,還有許多參數設置沒有寫明,以及pyecharts 動態圖神器,日后學習了再一點點補充吧~

到此這篇關于python可視化分析的實現(matplotlib、seaborn、ggplot2)的文章就介紹到這了,更多相關python 可視化內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 合肥注册公司|合肥代办营业执照、2024注册公司流程 | 法兰螺母 - 不锈钢螺母制造厂家 - 万千紧固件--螺母街 | 杭州网络公司_百度SEO优化-外贸网络推广_抖音小程序开发-杭州乐软科技有限公司 | 线材成型机,线材折弯机,线材成型机厂家,贝朗自动化设备有限公司1 | 电缆桥架生产厂家_槽式/梯式_热镀锌线槽_广东东莞雷正电气 | 不锈钢电动球阀_气动高压闸阀_旋塞疏水调节阀_全立阀门-来自温州工业阀门巨头企业 | 预制舱-电力集装箱预制舱-模块化预制舱生产厂家-腾达电器设备 | 离子色谱自动进样器-青岛艾力析实验科技有限公司 | 短信群发平台_群发短信软件_短信营销-讯鸽科技 | 除尘器布袋骨架,除尘器滤袋,除尘器骨架,电磁脉冲阀膜片,卸灰阀,螺旋输送机-泊头市天润环保机械设备有限公司 | Brotu | 关注AI,Web3.0,VR/AR,GPT,元宇宙区块链数字产业 | 超声波焊接机_超音波熔接机_超声波塑焊机十大品牌_塑料超声波焊接设备厂家 | 冰雕-冰雪世界-大型冰雕展制作公司-赛北冰雕官网 | LED投光灯-工矿灯-led路灯头-工业灯具 - 山东普瑞斯照明科技有限公司 | 加热制冷恒温循环器-加热制冷循环油浴-杭州庚雨仪器有限公司 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | 电气控制系统集成商-PLC控制柜变频控制柜-非标自动化定制-电气控制柜成套-NIDEC CT变频器-威肯自动化控制 | 篷房[仓储-婚庆-展览-活动]生产厂家-江苏正德装配式帐篷有限公司 | 单柱拉力机-橡胶冲片机-哑铃裁刀-江都轩宇试验机械厂 | ★济南领跃标识制作公司★济南标识制作,标牌制作,山东标识制作,济南标牌厂 | 家德利门业,家居安全门,别墅大门 - 安徽家德利门业有限公司 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 安徽泰科检测科技有限公司【官方网站】| 智能门锁电机_智能门锁离合器_智能门锁电机厂家-温州劲力智能科技有限公司 | 广州各区危化证办理_危险化学品经营许可证代办 | 软文发布-新闻发布推广平台-代写文章-网络广告营销-自助发稿公司媒介星 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 学生作文网_中小学生作文大全与写作指导| 碎石机设备-欧版反击破-欧版颚式破碎机(站)厂家_山东奥凯诺机械 高低温试验箱-模拟高低温试验箱订制-北京普桑达仪器科技有限公司【官网】 | 磁棒电感生产厂家-电感器厂家-电感定制-贴片功率电感供应商-棒形电感生产厂家-苏州谷景电子有限公司 | 福州甲醛检测-福建室内空气检测_环境检测_水质检测-福建中凯检测技术有限公司 | PAS糖原染色-CBA流式多因子-明胶酶谱MMP-上海研谨生物科技有限公司 | 深圳市宏康仪器科技有限公司-模拟高空低压试验箱-高温防爆试验箱-温控短路试验箱【官网】 | 求是网 - 思想建党 理论强党 | 智能楼宇-楼宇自控系统-楼宇智能化-楼宇自动化-三水智能化 | 连续油炸机,全自动油炸机,花生米油炸机-烟台茂源食品机械制造有限公司 | 安全光栅|射频导纳物位开关|音叉料位计|雷达液位计|两级跑偏开关|双向拉绳开关-山东卓信机械有限公司 | 挖掘机挖斗和铲斗生产厂家选择徐州崛起机械制造有限公司 | 大型果蔬切片机-水果冬瓜削皮机-洗菜机切菜机-肇庆市凤翔餐饮设备有限公司 | 睿婕轻钢别墅_钢结构别墅_厂家设计施工报价 | 求是网 - 思想建党 理论强党|