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

python?matplotlib自定義colorbar顏色條及內(nèi)置色條詳解

 更新時(shí)間:2022年08月10日 11:27:14   作者:liucheng_zimozigreat  
由于自己畫圖的需要想要用一些自定義的顏色來(lái)做一個(gè)colorbar,所以下面這篇文章主要給大家介紹了關(guān)于python?matplotlib自定義colorbar顏色條及內(nèi)置色條的相關(guān)資料,需要的朋友可以參考下

PS: 傳送門——自定義Colorbars教程

自定義colorbar(draw colorbar without any mapple/plot)

參考:Customized Colorbars Tutorial

   api example code: colorbar_only.py

自定義colorbar可以畫出任何自己想要的colorbar,自由自在、不受約束,不依賴于任何已有的圖(plot/mappable)。這里使用的是mpl.colorbar.ColorbarBase類,而colorbar類必須依賴于已有的圖。

關(guān)于該類的參數(shù)如下 (該類參數(shù)描述沒找到,部分參數(shù)的取值可參考colorbar中的描述):

class matplotlib.colorbar.ColorbarBase(ax, cmap=None, norm=None, alpha=None, values=None, boundaries=None, orientation=‘vertical’, ticklocation=‘auto’, extend=‘neither’, spacing=‘uniform’, ticks=None, format=None, drawedges=False, filled=True, extendfrac=None, extendrect=False, label=’’)[source]
參數(shù)簡(jiǎn)單描述

ax :可用于設(shè)置colorbar的位置、長(zhǎng)、寬
norm :用于規(guī)范化–設(shè)置顏色條最大最小值
cmap:顏色(可參考本篇博文的最后部分——推薦色帶與自定義色帶)
boundaries:要想使用extend,在norm之外,必須要有兩個(gè)額外的boundaries
orientation:colorbar方向,躺平or垂直
extend:延伸方向(在norm之外colorbar可延伸)
ticks:自定義各段的tick(記號(hào))

下面是一個(gè)例子,可以自己試試調(diào)整各項(xiàng)參數(shù):

import numpy as np
import pylab as plt
import matplotlib as mpl

if __name__ == '__main__':
	fig = plt.figure(figsize=(3, 8))
	cmap = mpl.cm.Spectral_r
	ax3 = fig.add_axes([0.3, 0.2, 0.2, 0.5]) # 四個(gè)參數(shù)分別是左、下、寬、長(zhǎng)
	norm = mpl.colors.Normalize(vmin=1.3, vmax=2.5)
	bounds = [ round(elem, 2) for elem in np.linspace(1.3, 2.5, 14)] # 
	cb3 = mpl.colorbar.ColorbarBase(ax3, cmap=cmap,
								norm=norm,
								# to use 'extend', you must
								# specify two extra boundaries:
								boundaries= [1.2] + bounds + [2.6],
								extend='both',
								ticks=bounds,  # optional
								spacing='proportional',
								orientation='vertical')
	plt.show()

contourf函數(shù)

contour和contourf分別繪制輪廓線和填充輪廓線。兩個(gè)版本的函數(shù)簽名和返回值是相同的。關(guān)于兩者畫圖的一些實(shí)例可以參閱python matplotlib contour畫等高線圖,以及matplotlib中文文檔

    contourf([X, Y,] Z, [levels], **kwargs) # [ ]表示該參數(shù)是可選的——可以給定也可以不給定

contourf中的基本參數(shù):

X, Y : array-like, optional

  contourf參數(shù)中X和Y都必須是二維的,形狀與Z相同(例如,通過(guò)numpy.meshgrid創(chuàng)建);或者都必須是一維的,這樣len(X) == M是Z中的列數(shù),len(Y) == N是Z中的行數(shù)。
  如果沒有給定,則假設(shè)它們是整數(shù)索引,即X = range(M), Y = range(N)。

Z : array-like(N, M)

繪制輪廓線的高度值。

levels : int or array-like, optional

確定等高線/區(qū)域的數(shù)量和位置。
如果是int n,則使用n個(gè)數(shù)據(jù)間隔;即畫n+1條等高線。水平高度是自動(dòng)選擇的。
如果類似數(shù)組,則在指定的級(jí)別上繪制等高線。這些值必須是遞增的。

為所有子圖添加一個(gè)色帶

參考:Matplotlib 2 Subplots, 1 Colorbar

在有圖的情況下,為所有子圖添加一個(gè)colorbar:

import numpy as np
import matplotlib.pyplot as plt

fig, axes = plt.subplots(nrows=2, ncols=2)
for ax in axes.flat:
    im = ax.imshow(np.random.random((10,10)), vmin=0, vmax=1)

fig.subplots_adjust(right=0.8)
cbar_ax = fig.add_axes([0.85, 0.15, 0.05, 0.7])
fig.colorbar(im, cax=cbar_ax)

plt.show()

推薦色帶與自定義色帶

在畫圖的時(shí)候,可以用推薦色帶。在Contourf 與記錄顏色刻度中,發(fā)現(xiàn)contourf中有cmap參數(shù),cmap即是色帶。cmap的值可以參考Colormap reference。

下面這段代碼來(lái)自Contourf 與記錄顏色刻度

cs = ax.contourf(X, Y, z, locator=ticker.LogLocator(), cmap=cm.PuBu_r) # PuBu_r是PuBu色帶的倒轉(zhuǎn)
cbar = fig.colorbar(cs)

其中cmap就是使用matplotlib提供的色帶,如果要自己制定色帶可以用參數(shù)colors如下:

# Colors是一些自選顏色列表
Colors=('#DDDDFF','#7D7DFF','#0000C6','#000079','#CEFFCE','#28FF28','#007500','#FFFF93','#8C8C00','#FFB5B5','#FF0000','#CE0000','#750000')
cs=m.contourf(xi, yi, z, colors=Colors, levels=levels, extend='both')  # 這里m是一個(gè)basemap實(shí)例

在cmap中提供了一些默認(rèn)色帶:

總結(jié) 

到此這篇關(guān)于python matplotlib自定義colorbar顏色條及內(nèi)置色條的文章就介紹到這了,更多相關(guān)matplotlib自定義colorbar顏色條內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于python實(shí)現(xiàn)銀行管理系統(tǒng)

    基于python實(shí)現(xiàn)銀行管理系統(tǒng)

    這篇文章主要介紹了基于python實(shí)現(xiàn)銀行管理系統(tǒng),文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python項(xiàng)目制作的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-04-04
  • numpy array找出符合條件的數(shù)并賦值的示例代碼

    numpy array找出符合條件的數(shù)并賦值的示例代碼

    本文主要介紹了numpy array找出符合條件的數(shù)并賦值的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 基于Python自制視覺桌上冰球小游戲

    基于Python自制視覺桌上冰球小游戲

    這篇文章主要和大家分享一下如何使用?mediapipe+opencv?制作桌上冰球的交互式小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-04-04
  • python字典和json.dumps()的遇到的坑分析

    python字典和json.dumps()的遇到的坑分析

    在本篇文章里小編給大家整理了關(guān)于python字典和json.dumps()的遇到的坑分析,需要的朋友們可以學(xué)習(xí)下。
    2020-03-03
  • python mysql中in參數(shù)化說(shuō)明

    python mysql中in參數(shù)化說(shuō)明

    這篇文章主要介紹了python mysql中in參數(shù)化說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • numpy中nan_to_num的具體使用

    numpy中nan_to_num的具體使用

    在Numpy中NaN值一般出現(xiàn)在數(shù)據(jù)清洗前,出現(xiàn)這個(gè)值說(shuō)明這個(gè)數(shù)據(jù)是缺失的,本文主要介紹了numpy中nan_to_num的具體使用,感興趣的可以了解一下
    2022-08-08
  • python excel轉(zhuǎn)換csv代碼實(shí)例

    python excel轉(zhuǎn)換csv代碼實(shí)例

    這篇文章主要介紹了python excel轉(zhuǎn)換csv代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python pip如何手動(dòng)安裝二進(jìn)制包

    python pip如何手動(dòng)安裝二進(jìn)制包

    這篇文章主要介紹了python pip如何手動(dòng)安裝二進(jìn)制包,幫助大家更好的進(jìn)行python開發(fā),感興趣的朋友可以了解下
    2020-09-09
  • 用python寫的一個(gè)wordpress的采集程序

    用python寫的一個(gè)wordpress的采集程序

    在學(xué)習(xí)python的過(guò)程中,經(jīng)過(guò)不斷的嘗試及努力,終于完成了第一個(gè)像樣的python程序,雖然還有很多需要優(yōu)化的地方,但是目前基本上實(shí)現(xiàn)了我所要求的功能,需要的朋友可以參考下
    2016-02-02
  • 解決python和pycharm安裝gmpy2 出現(xiàn)ERROR的問(wèn)題

    解決python和pycharm安裝gmpy2 出現(xiàn)ERROR的問(wèn)題

    這篇文章主要介紹了python和pycharm安裝gmpy2 出現(xiàn)ERROR的解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08

最新評(píng)論