Python colormap庫(kù)的安裝和使用詳情
colormap庫(kù)是Python中的一個(gè)對(duì)顏色進(jìn)行處理的第三方庫(kù),常用于對(duì)RGB(red,green,blue三原色的縮寫(xiě),真彩圖像)顏色的轉(zhuǎn)換,生成顏色圖等。
pypi文檔地址:https://pypi.org/project/colormap/
一、安裝colormap
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple easydev pip install colormap
colormap庫(kù)依賴(lài)于easydev庫(kù),需要先安裝easydev再安裝colormap。
二、獲取顏色的RGB元組表示和十六進(jìn)制表示
# coding=utf-8
from colormap import Color
c = Color('blue')
print(c.rgb)
print(c.hex)
print(c)
運(yùn)行結(jié)果:
(0.0, 0.0, 1.0)
#0000FF
Color Blue
hexa code: #0000FF
RGB code: (0.0, 0.0, 1.0)
RGB code (un-normalised): [0.0, 0.0, 255.0]HSV code: (0.6666666666666666, 1.0, 1.0)
HSV code: (un-normalised) 240.0 100.0 100.0HLS code: (0.6666666666666666, 0.5, 1.0)
HLS code: (un-normalised) 240.0 50.0 100.0
實(shí)例化一個(gè)Color類(lèi)的顏色對(duì)象c,傳入需要查看的顏色英文,打印輸出顏色對(duì)象c的rgb屬性即可得到對(duì)應(yīng)的元組表示方法,打印輸出顏色對(duì)象c的hex屬性即可得到對(duì)應(yīng)的十六進(jìn)制表示方法。直接打印輸出顏色對(duì)象c,可以同時(shí)查看該顏色的各種表示方法。
三、轉(zhuǎn)換顏色的表示方法
from colormap import hex2rgb, rgb2hex
print(rgb2hex(255, 0, 0))
print(hex2rgb('#FF0000'))
運(yùn)行結(jié)果:
#FF0000 (255, 0, 0)
rgb2hex(): 將RGB顏色的元組表示方法轉(zhuǎn)換成十六進(jìn)制表示方法。
hex2rgb(): 將RGB顏色的十六進(jìn)制表示方法轉(zhuǎn)換成元組表示方法。
兩個(gè)方法是互逆的,RGB的元組表示是一個(gè)長(zhǎng)度為3的元組,每個(gè)數(shù)字是0~255(2^8 - 1),三個(gè)數(shù)字的大小分別表示紅、綠、藍(lán),如(255, 0, 0)表示紅色。
RGB的十六進(jìn)制表示是一個(gè)以'#'號(hào)開(kāi)頭的字符串,'#'后接一個(gè)長(zhǎng)度為六的十六進(jìn)制(0~F)數(shù)字,每?jī)晌槐硎炯t、綠、藍(lán)中的一個(gè)(00~FF),如‘#FF0000'表示紅色。
其他的轉(zhuǎn)換函數(shù)不是很常用,有些不能正常使用(如hex2web()和web2hex()),感興趣可以點(diǎn)進(jìn)源碼看看。
四、創(chuàng)建顏色圖
要使用colormap創(chuàng)建顏色圖,需要先安裝numpy和matplotlib兩個(gè)庫(kù)。
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple
這兩個(gè)庫(kù)都比較大,建議都換成國(guó)內(nèi)的鏡像源。colormap自身沒(méi)有繪圖功能,所以生成圖像時(shí)會(huì)去調(diào)用numpy和matplotlib。
庫(kù)安裝成功后,開(kāi)始繪制顏色圖。
from colormap import Colormap
c = Colormap()
map = c.cmap_linear('blue', 'white', 'green')
c.test_colormap(map)
運(yùn)行結(jié)果:

實(shí)例化一個(gè)Colormap類(lèi)的對(duì)象c,用于調(diào)用對(duì)應(yīng)的方法生成顏色圖。
cmap_linear(): Colormap類(lèi)中的方法,用于生成三種顏色的漸變圖,第一種顏色至第三種顏色的漸變,中間用第二種顏色銜接。傳入三種顏色,cmap_linear()方法中會(huì)用這三種顏色實(shí)例化三個(gè)Color類(lèi)的對(duì)象,然后用三個(gè)對(duì)象生成顏色的漸變,并將漸變的結(jié)結(jié)果作為一個(gè)顏色圖對(duì)象返回。
test_colormap(): Colormap類(lèi)中的方法,用于繪制漸變圖像。傳入需要繪圖的顏色圖對(duì)象,test_colormap()方法中會(huì)導(dǎo)入numpy和matplotlib庫(kù),生成圖像。
如果不實(shí)例化Colormap類(lèi)的對(duì)象,也可以直接調(diào)用函數(shù)生成顏色圖。
from colormap import cmap_builder, test_cmap
mycm = cmap_builder('green', 'black', 'blue')
test_cmap(mycm)
運(yùn)行結(jié)果:

cmap_builder(): colormap庫(kù)中的函數(shù),調(diào)用了Colormap類(lèi)中的cmap_linear()方法。
test_cmap(): colormap庫(kù)中的函數(shù),調(diào)用了Colormap類(lèi)中的test_colormap()方法。
當(dāng)然,也可以生成更復(fù)雜的顏色圖。
from colormap import Colormap
c = Colormap()
d = {'red': [0, 1, 0, 0, 1, 1, 0, 1],
'green': [0, 0, 1, 0, 1, 0, 1, 1],
'blue': [0, 0, 0, 1, 0, 1, 1, 1]}
map = c.cmap(d, reverse=False)
c.test_colormap(map)
運(yùn)行結(jié)果:

cmap(colors=None, reverse=False, N=256): Colormap類(lèi)中的方法,返回一個(gè)colormap的對(duì)象,給matplotlib繪圖使用。上面用的cmap_linear()方法其實(shí)也是調(diào)用了cmap()方法。有3個(gè)參數(shù)。colors表示一組字典類(lèi)型的RGB顏色參數(shù)。reverse表示顏色圖的順序,默認(rèn)為False(從中心到邊緣的順序與colors的順序相同),如果改為T(mén)rue則將顏色的順序剛好相反。N是一個(gè)整數(shù),默認(rèn)256,保持默認(rèn)即可。
到此這篇關(guān)于Python colormap庫(kù)的安裝和使用詳情的文章就介紹到這了,更多相關(guān)Python colormap庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
pycharm上的python虛擬環(huán)境移到離線機(jī)器上的方法步驟
本人在工作中需要在離線Windows環(huán)境中使用,本文主要介紹了pycharm上的python虛擬環(huán)境移到離線機(jī)器上的方法步驟,具有一定的參考價(jià)值,感興趣的可以了解一下2021-10-10
使用Python遍歷文件夾實(shí)現(xiàn)查找指定文件夾
這篇文章主要為大家介紹了如何使用Python遍歷文件夾從而實(shí)現(xiàn)查找指定文件夾下所有相同名稱(chēng)的文件、所有相同后綴名的文件,感興趣的可以了解一下2022-07-07
Python Flask 請(qǐng)求數(shù)據(jù)獲取響應(yīng)詳解
這篇文章主要介紹了Python Flask請(qǐng)求數(shù)據(jù)獲取響應(yīng)的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-10-10
Tensorflow自定義模型與訓(xùn)練超詳細(xì)講解
TensorFlow是基于數(shù)據(jù)流編程的符號(hào)數(shù)學(xué)系統(tǒng),廣泛用于機(jī)器學(xué)習(xí)算法的編程實(shí)現(xiàn),前身是谷歌的神經(jīng)網(wǎng)絡(luò)算法庫(kù)DistBelief,Tensorflow擁有多層級(jí)結(jié)構(gòu),可部署于各類(lèi)服務(wù)器、PC終端和網(wǎng)頁(yè)并支持GPU和TPU高性能數(shù)值計(jì)算,被廣泛應(yīng)用于谷歌內(nèi)部的產(chǎn)品開(kāi)發(fā)和各領(lǐng)域的科學(xué)研究2022-11-11
如何把python項(xiàng)目部署到linux服務(wù)器
這篇文章主要介紹了如何把python項(xiàng)目部署到linux服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
python中ThreadPoolExecutor線程池和ProcessPoolExecutor進(jìn)程池
這篇文章主要介紹了python中ThreadPoolExecutor線程池和ProcessPoolExecutor進(jìn)程池,文章圍繞主題相關(guān)資料展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-06-06
利用python開(kāi)發(fā)app實(shí)戰(zhàn)的方法
這篇文章主要介紹了利用python開(kāi)發(fā)app實(shí)戰(zhàn)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

