1. 程式人生 > >python畫圖之散點圖sactter函式詳解,基本雜湊點繪製

python畫圖之散點圖sactter函式詳解,基本雜湊點繪製

原文地址:http://blog.csdn.net/u013634684/article/details/49646311

http://blog.csdn.net/abcjennifer/article/details/19848269

http://blog.csdn.net/dataningwei/article/details/53619534

最近開始學習Python程式設計,遇到scatter函式,感覺裡面的引數不知道什麼意思於是查資料,最後總結如下:

1、scatter函式原型

2、其中散點的形狀引數marker如下:

3、其中顏色引數c如下:

4、基本的使用方法如下:

  1. #匯入必要的模組
  2. import numpy as np  
  3. import matplotlib.pyplot as plt  
  4. #產生測試資料
  5. x = np.arange(1,10)  
  6. y = x  
  7. fig = plt.figure()  
  8. ax1 = fig.add_subplot(111)  
  9. #設定標題
  10. ax1.set_title('Scatter Plot')  
  11. #設定X軸標籤
  12. plt.xlabel('X')  
  13. #設定Y軸標籤
  14. plt.ylabel('Y')  
  15. #畫散點圖
  16. ax1.scatter(x,y,c = 'r',marker = 'o')  
  17. #設定圖示
  18. plt.legend('x1')  
  19. #顯示所畫的圖
  20. plt.show()  

結果如下:

5、當scatter後面引數中陣列的使用方法,如s,當s是同x大小的陣列,表示x中的每個點對應s中一個大小,其他如c,等用法一樣,如下:

(1)、不同大小

  1. #匯入必要的模組
  2. import numpy as np  
  3. import matplotlib.pyplot as plt  
  4. #產生測試資料
  5. x = np.arange(1,10)  
  6. y = x  
  7. fig = plt.figure()  
  8. ax1 = fig.add_subplot(111)  
  9. #設定標題
  10. ax1.set_title('Scatter Plot')  
  11. #設定X軸標籤
  12. plt.xlabel('X'
    )  
  13. #設定Y軸標籤
  14. plt.ylabel('Y')  
  15. #畫散點圖
  16. sValue = x*10
  17. ax1.scatter(x,y,s=sValue,c='r',marker='x')  
  18. #設定圖示
  19. plt.legend('x1')  
  20. #顯示所畫的圖
  21. plt.show()  

(2)、不同顏色

  1. #匯入必要的模組
  2. import numpy as np  
  3. import matplotlib.pyplot as plt  
  4. #產生測試資料
  5. x = np.arange(1,10)  
  6. y = x  
  7. fig = plt.figure()  
  8. ax1 = fig.add_subplot(111)  
  9. #設定標題
  10. ax1.set_title('Scatter Plot')  
  11. #設定X軸標籤
  12. plt.xlabel('X')  
  13. #設定Y軸標籤
  14. plt.ylabel('Y')  
  15. #畫散點圖
  16. cValue = ['r','y','g','b','r','y','g','b','r']  
  17. ax1.scatter(x,y,c=cValue,marker='s')  
  18. #設定圖示
  19. plt.legend('x1')  
  20. #顯示所畫的圖
  21. plt.show()  

結果:

(3)、線寬linewidths

  1. #匯入必要的模組
  2. import numpy as np  
  3. import matplotlib.pyplot as plt  
  4. #產生測試資料
  5. x = np.arange(1,10)  
  6. y = x  
  7. fig = plt.figure()  
  8. ax1 = fig.add_subplot(111)  
  9. #設定標題
  10. ax1.set_title('Scatter Plot')  
  11. #設定X軸標籤
  12. plt.xlabel('X')  
  13. #設定Y軸標籤
  14. plt.ylabel('Y')  
  15. #畫散點圖
  16. lValue = x  
  17. ax1.scatter(x,y,c='r',s= 100,linewidths=lValue,marker='o')  
  18. #設定圖示
  19. plt.legend('x1')  
  20. #顯示所畫的圖
  21. plt.show()  

                     注:  這就是scatter基本的用法。

Python 中常用畫圖工具matplotlib.pyplot工具使用實驗。

程式碼:

[python] view plain copy  print?
  1. from sklearn.datasets.samples_generator import make_blobs  
  2. import matplotlib.pyplot as plt  
  3. X, y = make_blobs(n_samples=100, centers=3, n_features=2,random_state=0)  
  4. y=y+1;  
  5. # label
  6. plt.figure(1)  
  7. ax=plt.subplot(121)  
  8. plt.scatter(X[:,0],X[:,1])  
  9. ax.set_title('No lable')  
  10. ax=plt.subplot(122)  
  11. plt.scatter(X[:,0],X[:,1],y*30,y*30)  
  12. ax.set_title('Have lable')  
  13. #
  14. plt.figure(2)  
  15. ax=plt.subplot(111)  
  16. id=(y==1)  
  17. plt.scatter(X[id,0],X[id,1],s=20,color='b')  
  18. id=(y==2)  
  19. plt.scatter(X[id,0],X[id,1],s=50,color='r')  
  20. id=(y==3)  
  21. plt.scatter(X[id,0],X[id,1],s=70,color='g')  
  22. plt.show()  

顯示結果:

fiugre1


figure2

用matplotlib的scatter繪製散點圖,legend和matlab中稍有不同,詳見程式碼。

  1. x = rand(50,30)  
  2. from numpy import *  
  3. import matplotlib  
  4. import matplotlib.pyplot as plt  
  5. #basic
  6. f1 = plt.figure(1)  
  7. plt.subplot(211)  
  8. plt.scatter(x[:,1],x[:,0])  
  9. # with label
  10. plt.subplot(212)  
  11. label = list(ones(20))+list(2*ones(15))+list(3*ones(15))  
  12. label = array(label)  
  13. plt.scatter(x[:,1],x[:,0],15.0*label,15.0*label)  
  14. # with legend
  15. f2 = plt.figure(2)  
  16. idx_1 = find(label==1)  
  17. p1 = plt.scatter(x[idx_1,1], x[idx_1,0], marker = 'x', color = 'm', label='1', s = 

    相關推薦

    python畫圖sactter函式基本繪製

    原文地址:http://blog.csdn.net/u013634684/article/details/49646311 http://blog.csdn.net/abcjennifer/article/details/19848269 http://blog.csdn.

    【數字的視覺化:python畫圖sactter函式

    最近開始學習python程式設計,遇到scatter函式,感覺裡面的引數不知道什麼意思於是查資料,最後總結如下: 1、scatter函式原型 2、其中散點的形狀引數marker如下: 3、其中顏色引數c如下: 4、基本的使用方法如下: #匯入必要的模組 import

    數字的可視化:python畫圖sactter函數

    使用方法 顏色 inf num 測試 基本 mark 編程 div 最近開始學習python編程,遇到scatter函數,感覺裏面的參數不知道什麽意思於是查資料,最後總結如下: 1、scatter函數原型 2、其中散點的形狀參數marker如下: 3、其中

    Android NDK——必知必會JNI的C++操作函式和小結(三)

    引言 上一篇講解了一些關於JNI和NDK的必知必會的理論知識和機制,由於篇幅問題把關於JNI的重要的函式放到這篇,具體使用留到下一篇,此係列文章基連結: 一、JNI中的函式概述 在JNI層我們基本上都是通過env指標來呼叫jni.h標頭檔案裡定義的函式,JNI

    C++繼承二——派生類成員函式函式隱藏、建構函式與相容覆蓋規則)

      在這一篇文章開始之前,我先解決一個問題。   在上一篇C++繼承詳解之一——初探繼承中,我提到了在派生類中可以定義一個與基類成員函式同名的函式,這樣派生類中的函式就會覆蓋掉基類的成員函式。   在譚浩強的C++程式設計這本書第十一章,351頁最下面有這麼

    Python基礎學習資料(語法、函式

    目錄 目錄 1 常用函式 5 input() 5 int() 6 len() 7 list() 與tuple相對 8 tuple() 與list相對 9 sum() 10 max() 11 min() 12 print() 13 range() 14 set() 15 sorted() 16

    ZigBee學習繫結表管理函式——ZStack API解讀

    應用支援子層(APS)  應用支援子層提供如下管理功能:  · 邦定表管理  · 組表管理  · 快速地址查詢  除了管理功能外,APS還提供資料服務,只是應用不能訪問資料服務。應用需要通過AF資料介面AF_DataRequest()來發送資料。如果要使用邦定表函式需要包含BindingTable.h標頭檔案

    Oracle數據庫體系結構基本操作管理及客戶端遠程連接

    plus down 緩沖區 擴展名 應用 提交 normal 系統 等待 上一篇文章《Oracle Database 12c安裝》講解了如何安裝oracle數據庫,這篇文章繼續講解數據庫的體系結構,基本操作管理及客戶端遠程連接Oracle的體系結構 Oracle數據庫由兩部

    Mysql高手系列 - 第10篇:常用的幾十個函式收藏慢慢看

    這是Mysql系列第10篇。 環境:mysql5.7.25,cmd命令中進行演示。 MySQL 數值型函式 函式名稱 作 用 abs 求絕對值 sqrt 求二次方根 mod 求餘數 ceil 和 ceiling 兩個函式功能相同,都是返回不小於引數的最小整數,即向上取整 floo

    python學習五(map,filter,reduce函式的使用)

    map函式 我們首先使用原始的方法定義幾個功能函式來實現數字的加,減,平方運算。程式碼如下所示: def add(x): return x+1 def reduce(x): return x-1 def pf(x): return x**2 num_1=[1,2

    python學習-類的內建函式

    內建方法:__str__(該方法必須返回字串型別),在對像被列印時自動觸發,然後將該方法的返回值當做列印結果輸出) class People: def __init__(self,name,age): self.name=name self.age=age def _

    Python模組os:作業系統介面函式

    os模組是與作業系統互動的一個介面 複製程式碼 ''' os.getcwd() 獲取當前工作目錄,即當前python指令碼工作的目錄路徑 os.chdir("dirname") 改變當前指令碼工作目錄;相當於shell下cd os.curdir 返回當前目錄: ('.') os.pardir 獲取當前目錄的父

    Pythonprint函式

    輸出的 print 函式總結: 1. 字串和數值型別 可以直接輸出 >>> print(1) 1 >>> print("Hello World") Hello World 2.變數無論什麼型別,數值,布林,列表,字典...都可以直接輸出

    Python畫圖初體驗----曲面和等高線

    import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D fig = pl

    04 python函式

    一、函式初識 函式的產生:函式就是封裝一個功能的程式碼片段。 li = ['spring', 'summer', 'autumn', 'winter'] def function(): count = 0 for j in li: count += 1 print(c

    MySQL---筆記的使用

    參考 utf undefine warning 通過 nec copy fine 裏的 什麽是視圖 視圖是從一個或多個表中導出來的表,是一種虛擬存在的表。 視圖就像一個窗口,通過這個窗口可以看到系統專門提供的數據。 這樣,用戶可以不用看到整個數據庫中的數據,而之關心

    Python爬蟲從入門到放棄(十三) Scrapy框架的命令行

    directory xpath idf 成了 spider i386 名稱 4.2 不同的 這篇文章主要是對的scrapy命令行使用的一個介紹 創建爬蟲項目 scrapy startproject 項目名例子如下: localhost:spider zhaofan$ sc

    PythonMetaclassPython元類

    turned 除了 方法 寫法 找到 類對象 global 所在 code 本人Java程序員一枚,這幾天閑來無事就自學了下Python,學到Metaclass感覺有點迷惑,就在網上查相關資料,在棧溢出(stackoverflow)網站上看到一個關於metaclass的回答

    三十五、python學習Flask框架(七)資料庫:Flask對資料庫的基本操作、常見關係模板、資料庫遷移、綜合案例:圖書管理

    補充:   使用SQL_Alchemy定義一個模型類,不可以不指定primary_key=True建立表. 一、資料庫基本操作 1. 資料庫的基本操作(CRUD): 在Flask-SQLAlchemy中,插入、修改、刪除操作,均由資料庫會話管理。

    演算法導論 第十一章:列表 筆記(直接定址表、列表、通過連結法解決碰撞、函式、開放定址法、完全

    前面討論的各種資料結構中,記錄在各種結構中的相對位置是隨機的,和在記錄的關鍵字之間不存在有確定的關係,因此在查詢記錄是需要進行一系列和關鍵字的比較。而理想的情況是不希望進行任何的比較,一次存取便能得到所查記錄。那就必須在記錄的儲存位置和它的關鍵字之間建立一種確定的關係f,使每個關鍵字和結構中有一