最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解讀matplotlib和seaborn顏色圖(colormap)和調(diào)色板(color palette)

 更新時(shí)間:2023年06月25日 08:54:17   作者:qiu_xingye  
這篇文章主要介紹了matplotlib和seaborn顏色圖(colormap)和調(diào)色板(color palette),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

顏色圖或調(diào)色板是指一系列的有規(guī)律的顏色的集合,可以區(qū)分不同類型的離散數(shù)據(jù)或不同值的連續(xù)數(shù)據(jù)。

一般在matplotlib中稱為colormap(在繪圖函數(shù)中的關(guān)鍵字為cmap),在seaborn中一般稱為color palette(在繪圖函數(shù)中的關(guān)鍵字為palette)。

由于seaborn是基于matplotlib開(kāi)發(fā)的,因此matplotlib中的各類colormap一般seaborn均支持。

為統(tǒng)一起見(jiàn),下文統(tǒng)稱為palette或調(diào)色板。

調(diào)色板一般分為三類:

  • 離散型(qualitative):用來(lái)表示沒(méi)有順序關(guān)系的不同數(shù)據(jù)連續(xù)型
  • (sequential):用來(lái)表示有序關(guān)系的連續(xù)數(shù)據(jù)連續(xù)雙邊型
  • (diverging):類似連續(xù)型,但數(shù)據(jù)的分布會(huì)跨越一個(gè)中間點(diǎn)(一般為0),在表示數(shù)據(jù)的特征時(shí)用來(lái)強(qiáng)調(diào)值在兩端的數(shù)據(jù),弱化值在中間的數(shù)據(jù)

下文分別列出各類常用的調(diào)色板若干。

import seaborn as sns

離散型

seaborn庫(kù)自帶的調(diào)色板

sns.color_palette()

seaborn除了默認(rèn)的調(diào)色板外,自帶了"deep", “muted”, “pastel”, “bright”, “dark”, "colorblind"等6種調(diào)色板

sns.color_palette("deep")

pallettes = ["deep", "muted", "pastel", "bright", "dark", "colorblind"]
data = np.array([sns.color_palette(pat) for pat in pallettes])
fig = plt.figure(figsize=(9,16))
ax = fig.add_subplot(111)
ax.imshow(data)
for i, pat in enumerate(pallettes):
    ax.text(-0.6, i, pat, ha="right")
plt.axis("off");

# 示例
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
col1 = ["A"]*5 + ["B"]*5
col2 = list("abcde")*2
val = np.random.rand(10)
df = pd.DataFrame({"col1":col1, "col2":col2, "val":val})
df
fig = plt.figure(figsize=(8,8))
fig.subplots_adjust(wspace=0.1, hspace=0.25)
for i, palette in enumerate(["deep", "muted", "bright", "dark"]):
    ax = fig.add_subplot(2, 2, i+1)
    sns.barplot(x="col2", y="val", hue="col1", data=df, ax=ax, palette=palette)
    ax.set_title(palette)

自定義調(diào)色板

可利用hls(色相、亮度、飽和度)顏色空間自定義任意數(shù)量顏色的調(diào)色板

sns.color_palette("hls", 8)

sns.color_palette("hls", 16)

sns.color_palette("husl", 8) # husl相比hls,基于人的視覺(jué)特點(diǎn)對(duì)顏色進(jìn)行了修正

其它調(diào)色板

主要是matplotlib庫(kù)自帶的調(diào)色板,有’Pastel1’, ‘Pastel2’, ‘Paired’, ‘Accent’,‘Dark2’, ‘Set1’, ‘Set2’, ‘Set3’, ‘tab10’, ‘tab20’, ‘tab20b’, 'tab20c’等

sns.color_palette("Set2")

sns.color_palette("tab10")

連續(xù)型

主要有"rocket", “mako”, “flare"和"crest”,其中"rocket", “mako"適合較大的數(shù)值跨度;名稱后面加”_r"表示翻轉(zhuǎn)。

同時(shí)也支持matploblib自帶的"magma"、"viridis"等。

也可用sns.cubehelix_palette函數(shù)自定義。

fig = plt.figure(figsize=(24,8))
fig.subplots_adjust(wspace=0.1, hspace=0.25)
palettes = ["rocket", "mako", "flare", "crest", "magma", "viridis"]
palettes += [pat+"_r" for pat in palettes] 
data = np.random.rand(10,10)
for i, palette in enumerate(palettes):
    ax = fig.add_subplot(2, 6, i+1)
    sns.heatmap(data, cmap=palette)
    ax.set_title(palette)

連續(xù)雙邊型

主要有"vlag"和"icefire";以及matplotlib自帶的"Spectral"和"coolwarm";名稱后面加"_r"表示翻轉(zhuǎn)。

也可用sns.diverging_palette函數(shù)自定義

fig = plt.figure(figsize=(16,8))
fig.subplots_adjust(wspace=0.2, hspace=0.25)
palettes = ["vlag", "icefire", "Spectral", "coolwarm"]
palettes += [pat+"_r" for pat in palettes] 
data = np.random.rand(10,10)*2-1
for i, palette in enumerate(palettes):
    ax = fig.add_subplot(2, 4, i+1)
    sns.heatmap(data, cmap=palette)
    ax.set_title(palette)

參考

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python雙端隊(duì)列實(shí)現(xiàn)回文檢測(cè)

    Python雙端隊(duì)列實(shí)現(xiàn)回文檢測(cè)

    雙端隊(duì)列 Deque 是一種有次序的數(shù)據(jù)集,跟隊(duì)列相似,其兩端可以稱作"首" 和 "尾"端。這篇文章將通過(guò)雙端隊(duì)列實(shí)現(xiàn)回文檢測(cè),感興趣的可以學(xué)習(xí)一下
    2022-01-01
  • PyCharm2019安裝教程及其使用(圖文教程)

    PyCharm2019安裝教程及其使用(圖文教程)

    這篇文章主要介紹了PyCharm2019安裝教程(圖文教程),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Python使用Tkinter實(shí)現(xiàn)機(jī)器人走迷宮

    Python使用Tkinter實(shí)現(xiàn)機(jī)器人走迷宮

    這篇文章主要為大家詳細(xì)介紹了Python使用Tkinter實(shí)現(xiàn)機(jī)器人走迷宮,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • pytorch 運(yùn)行一段時(shí)間后出現(xiàn)GPU OOM的問(wèn)題

    pytorch 運(yùn)行一段時(shí)間后出現(xiàn)GPU OOM的問(wèn)題

    這篇文章主要介紹了pytorch 運(yùn)行一段時(shí)間后出現(xiàn)GPU OOM的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Python+PyQt5實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)備份神器

    Python+PyQt5實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)備份神器

    在數(shù)據(jù)庫(kù)管理工作中,定期備份是確保數(shù)據(jù)安全的重要措施,本文將介紹如何使用Python+PyQt5開(kāi)發(fā)一個(gè)高顏值,多功能的MySQL數(shù)據(jù)庫(kù)備份工具,有需要的可以了解下
    2025-05-05
  • Python實(shí)現(xiàn)去除代碼前行號(hào)的方法

    Python實(shí)現(xiàn)去除代碼前行號(hào)的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)去除代碼前行號(hào)的方法,實(shí)例分析了Python操作字符的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • Django實(shí)戰(zhàn)之用戶認(rèn)證(初始配置)

    Django實(shí)戰(zhàn)之用戶認(rèn)證(初始配置)

    這篇文章主要介紹了Django實(shí)戰(zhàn)之用戶認(rèn)證(初始配置),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • pytorch圖片分割原理分析

    pytorch圖片分割原理分析

    自Transformer模型被應(yīng)用于計(jì)算機(jī)視覺(jué)領(lǐng)域后,圖像分割技術(shù)得到了進(jìn)一步的發(fā)展,但圖像分割操作復(fù)雜,特別是對(duì)張量的處理,涉及多種變換方法,其中,view/reshape用于改變數(shù)據(jù)形狀,而permute/transpose用于改變數(shù)據(jù)的維度順序
    2024-10-10
  • Flask項(xiàng)目搭建及部署(最全教程)

    Flask項(xiàng)目搭建及部署(最全教程)

    本文主要介紹了Flask項(xiàng)目搭建及部署,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • python+selenium+chromedriver實(shí)現(xiàn)爬蟲(chóng)示例代碼

    python+selenium+chromedriver實(shí)現(xiàn)爬蟲(chóng)示例代碼

    這篇文章主要介紹了python+selenium+chromedriver實(shí)現(xiàn)爬蟲(chóng)示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04

最新評(píng)論

石景山区| 山东| 安新县| 漠河县| 定州市| 唐河县| 陇西县| 牡丹江市| 宝兴县| 衡山县| 黔江区| 万州区| 吉首市| 新沂市| 济阳县| 东台市| 南京市| 贵南县| 宜阳县| 明水县| 新安县| 兴业县| 涿州市| 临澧县| 海城市| 青铜峡市| 德州市| 英吉沙县| 萍乡市| 凌云县| 平度市| 兴国县| 翁源县| 罗城| 徐汇区| 中阳县| 逊克县| 鄄城县| 南汇区| 龙里县| 东台市|