欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python通過Matplotlib繪制常見的幾種圖形(推薦)

 更新時間:2021年08月25日 17:20:36   作者:孤獨的明月  
這篇文章主要介紹了使用matplotlib對幾種常見的圖形進行繪制方法的相關(guān)資料,需要的朋友可以參考下

python通過Matplotlib繪制常見的幾種圖形

一、使用matplotlib對幾種常見的圖形進行繪制

import numpy as np 
import matplotlib.pyplot as plt
%matplotlib inline #寫了這個就可以不用寫plt.show()
plt.rcParams['font.sans-serif']=['SimHei'] #用來正常顯示中文標簽
plt.rcParams['axes.unicode_minus']=False #用來正常顯示負號
 
 
X = np.linspace(0, 2*np.pi,100)# 均勻的劃分數(shù)據(jù)
Y = np.sin(X)
Y1 = np.cos(X)
 
plt.title("Hello World!!")
plt.plot(X,Y)
plt.plot(X,Y1)

X = np.linspace(0, 2*np.pi,100)  
Y = np.sin(X)
Y1 = np.cos(X)
plt.subplot(211) # 等價于 subplot(2,1,1)  #一個圖版畫兩個圖
plt.plot(X,Y)
 
plt.subplot(212)
plt.plot(X,Y1,color = 'r')

1、柱狀圖

data = [5,25,50,20]
plt.bar(range(len(data)),data)

2、水平繪制柱狀圖

data = [5,25,50,20]
plt.barh(range(len(data)),data)

3、多個柱狀圖

data = [[5,25,50,20],
        [4,23,51,17],
        [6,22,52,19]]
X = np.arange(4)
 
plt.bar(X + 0.00, data[0], color = 'b', width = 0.25,label = "A")
plt.bar(X + 0.25, data[1], color = 'g', width = 0.25,label = "B")
plt.bar(X + 0.50, data[2], color = 'r', width = 0.25,label = "C")
 
# 顯示上面設(shè)置的 lable
plt.legend()

4、疊加型柱狀圖

data = [[5,25,50,20],
        [4,23,51,17],
        [6,22,52,19]]
X = np.arange(4)
 
plt.bar(X, data[0], color = 'b', width = 0.25)
plt.bar(X, data[1], color = 'g', width = 0.25,bottom = data[0])
plt.bar(X, data[2], color = 'r', width = 0.25,bottom = np.array(data[0]) + np.array(data[1]))
 
plt.show()

5、散點圖

N = 50
x = np.random.rand(N)
y = np.random.rand(N)
 
plt.scatter(x, y)

6、氣泡圖

N = 50
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.randn(N) # 顏色可以用數(shù)值表示
area = np.pi * (15 * np.random.rand(N))**2  #  調(diào)整大小
 
plt.scatter(x, y, c=colors, alpha=0.5, s = area)

 

N = 50
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.randint(0,2,size =50)
plt.scatter(x, y, c=colors, alpha=0.5,s = area)

 

7、直方圖

a = np.random.rand(100)
plt.hist(a,bins= 20)
plt.ylim(0,15)

a = np.random.randn(10000)
plt.hist(a,bins=50)
plt.title("標準正太分布")

8、箱線圖

x = np.random.randint(20,100,size = (30,3))
plt.boxplot(x)
plt.ylim(0,120)
# 在x軸的什么位置填一個 label,我們這里制定在 1,2,3 位置,寫上 A,B,C
plt.xticks([1,2,3],['A','B','C']) 
 
plt.hlines(y = np.median(x,axis = 0)[0] ,xmin =0,xmax=3)

二、添加文字描述

1、文字描述一

# 設(shè)置畫布顏色為 blue
fig, ax = plt.subplots(facecolor='blue')
 
# y 軸數(shù)據(jù)
data = [[5,25,50,20],
        [4,23,51,17],
        [6,22,52,19]]
X = np.arange(4)
 
plt.bar(X+0.00, data[0], color = 'darkorange', width = 0.25,label = 'A')
plt.bar(X+0.25, data[1], color = 'steelblue', width = 0.25,label="B")
plt.bar(X+0.50, data[2], color = 'violet', width = 0.25,label = 'C')
 
ax.set_title("Figure 2")
plt.legend()
 
# 添加文字描述 方法一
W = [0.00,0.25,0.50]
for i in range(3):
    for a,b in zip(X+W[i],data[i]):
        plt.text(a,b,"%.0f"% b,ha="center",va= "bottom")
        
plt.xlabel("Group")
plt.ylabel("Num")
plt.text(0.0,48,"TEXT")

 

2、文字描述二

X = np.linspace(0, 2*np.pi,100)# 均勻的劃分數(shù)據(jù)
Y = np.sin(X)
Y1 = np.cos(X)
 
plt.plot(X,Y)
plt.plot(X,Y1)
 
plt.annotate('Points',
         xy=(1, np.sin(1)),
         xytext=(2, 0.5), fontsize=16,
         arrowprops=dict(arrowstyle="->"))
 
plt.title("這是一副測試圖!")

三、多個圖形描繪 subplots

%pylab inline
pylab.rcParams['figure.figsize'] = (10, 6) # 調(diào)整圖片大小
 
# np.random.seed(19680801)
 
n_bins = 10
x = np.random.randn(1000, 3)
 
fig, axes = plt.subplots(nrows=2, ncols=2) 
ax0, ax1, ax2, ax3 = axes.flatten()
 
colors = ['red', 'tan', 'lime']
ax0.hist(x, n_bins, normed=1, histtype='bar', color=colors, label=colors)
ax0.legend(prop={'size': 10})
ax0.set_title('bars with legend')
 
ax1.hist(x, n_bins, normed=1, histtype='bar', stacked=True)
ax1.set_title('stacked bar')
 
ax2.hist(x, n_bins, histtype='step', stacked=True, fill=False)
ax2.set_title('stack step (unfilled)')
 
# Make a multiple-histogram of data-sets with different length.
x_multi = [np.random.randn(n) for n in [10000, 5000, 2000]]
ax3.hist(x_multi, n_bins, histtype='bar')
ax3.set_title('different sample sizes')

四、使用Pandas 繪圖

1、散點圖

import pandas as pd
df = pd.DataFrame(np.random.rand(50, 2), columns=['a', 'b'])
# 散點圖
df.plot.scatter(x='a', y='b')

2、繪制柱狀圖

df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])
# 繪制柱狀圖
df.plot.bar()

 3、堆積的柱狀圖

# 堆積的柱狀圖
df.plot.bar(stacked=True)

4、水平的柱狀圖

# 水平的柱狀圖
df.plot.barh(stacked=True)

5、直方圖

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=20)

6、箱線圖

# 箱線圖
df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])
df.plot.box()

到此這篇關(guān)于python通過Matplotlib繪制常見的幾種圖形(推薦)的文章就介紹到這了,更多相關(guān)python Matplotlib內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python獲取文件版本信息、公司名和產(chǎn)品名的方法

    python獲取文件版本信息、公司名和產(chǎn)品名的方法

    這篇文章主要介紹了python獲取文件版本信息、公司名和產(chǎn)品名的方法,是Python程序設(shè)計中非常實用的技巧,需要的朋友可以參考下
    2014-10-10
  • Python爬取Coursera課程資源的詳細過程

    Python爬取Coursera課程資源的詳細過程

    這篇文章主要介紹了Python爬取Coursera課程資源的詳細過程,需要的朋友可以參考下
    2014-11-11
  • opencv resize圖片為正方形尺寸的實現(xiàn)方法

    opencv resize圖片為正方形尺寸的實現(xiàn)方法

    這篇文章主要介紹了opencv resize圖片為正方形尺寸的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • Python調(diào)用C++程序的方法詳解

    Python調(diào)用C++程序的方法詳解

    這篇文章主要介紹了Python調(diào)用C++程序的方法,文中通過示例代碼介紹的詳細,相信對大家具有一定的參考借鑒價值,需要的朋友們下面來一起看看吧。
    2017-01-01
  • cookies應對python反爬蟲知識點詳解

    cookies應對python反爬蟲知識點詳解

    在本篇文章里小編給大家整理關(guān)于cookies應對python反爬蟲知識點詳解,有興趣的朋友們可以學習下。
    2020-11-11
  • 簡介Python的collections模塊中defaultdict類型的用法

    簡介Python的collections模塊中defaultdict類型的用法

    這里我們來簡介Python的collections模塊中defaultdict類型的用法,與內(nèi)置的字典類最大的不同在于初始化上,一起來看一下:
    2016-07-07
  • Python如何利用pandas讀取csv數(shù)據(jù)并繪圖

    Python如何利用pandas讀取csv數(shù)據(jù)并繪圖

    這篇文章主要介紹了Python如何利用pandas讀取csv數(shù)據(jù)并繪圖,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • pycharm創(chuàng)建并使用虛擬環(huán)境的詳細圖文教程

    pycharm創(chuàng)建并使用虛擬環(huán)境的詳細圖文教程

    Python的虛擬環(huán)境是正常的現(xiàn)實環(huán)境相對應的,在虛擬環(huán)境中安裝的包是與現(xiàn)實環(huán)境隔離的,下面這篇文章主要給大家介紹了關(guān)于pycharm創(chuàng)建并使用虛擬環(huán)境的詳細圖文教程,需要的朋友可以參考下
    2022-08-08
  • Python學習之shell腳本的使用詳解

    Python學習之shell腳本的使用詳解

    這篇文章主要為大家分析一個python庫–sh(系統(tǒng)調(diào)用),主要內(nèi)容包括其使用實例、應用技巧、基本知識點總結(jié)和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下
    2023-04-04
  • Django框架模板用法詳解

    Django框架模板用法詳解

    本文詳細講解了Django框架中模板的用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06

最新評論