>  기사  >  백엔드 개발  >  세계적으로 팔레트에 담긴 "실습"

세계적으로 팔레트에 담긴 "실습"

Python当打之年
Python当打之年앞으로
2023-08-10 15:13:391696검색



  • 어떤 친구들은 Python 시각화에 내장된 색상이 보기 흉하다고 말합니다. 그러면 palettable을 본 적이 없을 것입니다. paletable은 순수 Python으로 작성된 컬러 바(Colormap) 라이브러리로, 다수의 잘 알려진 시각화 소프트웨어의 색상 막대(예: Tableau 색상 시스템, matplotlib 부분 색상 시스템 등)에는 총 1587가지 유형의 색상 막대(Colormap)가 있으며 수만 가지 단일 색상을 사용할 수 있습니다. 이 글에서는 팔레트 사용 방법을 자세히 소개합니다.
    세계적으로 팔레트에 담긴


이 글의 목차

세계적으로 팔레트에 담긴

1. Palettable의 빠른 설치

pip install palettable -i https://pypi.tuna.tsinghua.edu.cn/simple

2. 지도)

팔레트 테이블 패키지 가져오기

import palettable
from palettable.cartocolors.qualitative import Bold_9

#为了描述方便,此处直接倒入palettable.cartocolors.qualitative大类下的Bold_9小类,
#实际使用时可直接用palettable.cartocolors.qualitative.Bold_9

팔레트 중요 속성-시각화된 크로마 바

Bold_9.show_discrete_image()#Bold_9各种颜色条图片
세계적으로 팔레트에 담긴

팔레트 테이블 중요 속성-크로마 바의 단색 개수 출력

print(Bold_9.number)#Bold_9这种colormap中单颜色的数目

9 그렇죠 , 위 그림에는 9개의 그리드가 있습니다

palettable 중요한 속성 - 크로마바에 단일 색상의 색상 번호 값을 출력합니다

print(Bold_9.colors)#Bold_9 colormap中每种颜色的RGB格式色号

print(Bold_9.hex_colors)#Bold_9 colormap中每种颜色的hex格式色号
print(Bold_9.mpl_colors)#RGB tuples in the range 0-1 as used by matplotlib

[[127, 60, 141], [17, 165, 121], [57, 105, 172], [242, 183, 1], [231, 63, 116], [128, 186, 90], [230, 131, 16], [0, 134, 149], [207 , 28, 144]]

[' #7F3C8D', '#11A579', '#3969AC', '#F2B701', '#E73F74', '#80BA5A', '#E68310', '#008695', ' #CF1C90']

[(0.4980392156862745, 0.23529411764705882, 0.5529411764705883), (0.0666666666666667, 0.6470588235294118, 0.4 745098039215686), (0.2235294117647059, 0.4117647058823529, 0.6745098039215687), (0.9490196078431372, 0.7176470588235294, 392156862745098), (0.9058823529411765, 0.24705882352941178, 0.4549019607843137), (0.5019607843137255, 0.7294117647058823, 0.35294117647058826), (0.9019607843137255, 0.5137254901960784, 0.06274509803921569), (0.0, 0.52549019607 84314, 0.5843137254901961), (0.8117647058823529, 0.10980392156862745, 0.56470588235 29412)]

Matplotlib中使用palettable

例子来自matplotlib-饼图(pie)

import matplotlib.pyplot as plt
import matplotlib as mpl
import palettable

mpl.rc_file_defaults()
my_dpi = 96
plt.figure(figsize=(580 / my_dpi, 580 / my_dpi), dpi=my_dpi)
plt.subplot(221)
patches, texts, autotexts = plt.pie(
    x=[1, 2, 3],
    labels=['A', 'B', 'C'],
    #使用palettable.tableau.BlueRed_6
    colors=palettable.tableau.BlueRed_6.mpl_colors[0:3],
    autopct='%.2f%%',
    explode=(0.1, 0, 0))

patches[0].set_alpha(0.3)
patches[2].set_hatch('|')
patches[1].set_hatch('x')
plt.title('tableau.BlueRed_6', size=12)

mpl.rc_file_defaults()
plt.subplot(222)

patches, texts, autotexts = plt.pie(
    x=[1, 2, 3],
    labels=['A', 'B', 'C'],
    #使用palettable.cartocolors.qualitative.Bold_9
    colors=palettable.cartocolors.qualitative.Bold_9.mpl_colors[0:3],
    autopct='%.2f%%',
    explode=(0.1, 0, 0))

patches[0].set_alpha(0.3)
patches[2].set_hatch('|')
patches[1].set_hatch('x')
plt.title('cartocolors.qualitative.Bold_9', size=12)

mpl.rc_file_defaults()
plt.subplot(223)

patches, texts, autotexts = plt.pie(
    x=[1, 2, 3],
    labels=['A', 'B', 'C'],
    #使用palettable.cartocolors.qualitative.Bold_9
    colors=palettable.cartocolors.qualitative.Bold_9.mpl_colors[0:3],
    autopct='%.2f%%',
    explode=(0.1, 0, 0))

patches[0].set_alpha(0.3)
patches[2].set_hatch('|')
patches[1].set_hatch('x')
plt.title('cartocolors.qualitative.Bold_9', size=12)

plt.subplot(223)

patches, texts, autotexts = plt.pie(
    x=[1, 2, 3],
    labels=['A', 'B', 'C'],
    #使用palettable.lightbartlein.sequential.Blues10_5
    colors=palettable.lightbartlein.sequential.Blues10_5.mpl_colors[0:3],
    autopct='%.2f%%',
    explode=(0.1, 0, 0))

#matplotlib.patches.Wedge
patches[0].set_alpha(0.3)
patches[2].set_hatch('|')
patches[1].set_hatch('x')
plt.title('lightbartlein.sequential.Blues10_5', size=12)

plt.subplot(224)

patches, texts, autotexts = plt.pie(
    x=[1, 2, 3],
    labels=['A', 'B', 'C'],
    colors=palettable.wesanderson.Moonrise5_6.mpl_colors[0:3],
    autopct='%.2f%%',
    explode=(0.1, 0, 0))

patches[0].set_alpha(0.3)
patches[2].set_hatch('|')
patches[1].set_hatch('x')
plt.title('wesanderson.Moonrise5_6', size=12)
plt.show()

Seaborn中使用palettable

세계적으로 팔레트에 담긴 例子来自几行代码绘制靓丽矩阵图
使用palettable.tableau.TrafficLight_9

import seaborn as sns
iris_sns = sns.load_dataset("iris")

import palettable

g = sns.pairplot(
    iris_sns,
    hue='species',
    palette=palettable.tableau.TrafficLight_9.mpl_colors,  #Matplotlib颜色
)
sns.set(style='whitegrid')
g.fig.set_size_inches(10, 8)
sns.set(style='whitegrid', font_scale=1.5)

세계적으로 팔레트에 담긴
使用palettable.tableau.BlueRed_6
세계적으로 팔레트에 담긴 使用palettable.cartocolors.qualitative.Bold_9세계적으로 팔레트에 담긴 使用palettable.wesanderson.Moonrise5_6세계적으로 팔레트에 담긴 使用palettable.cartocolors.diverging.ArmyRose_7_r세계적으로 팔레트에 담긴


3、palettable包含那些颜色条(Colormap)

palettable下面有16大类Colormap,共计1587小类Colormap,合计上万种单颜色可供使用,已经整理为pdf格式,感兴趣的可以
包含以下16大类

palettable.cartocolors.diverging
palettable.cartocolors.qualitative
palettable.cartocolors.sequential
palettable.cmocean.diverging
palettable.cmocean.sequential
palettable.colorbrewer.diverging
palettable.colorbrewer.qualitative
palettable.colorbrewer.sequential
palettable.lightbartlein.diverging
palettable.lightbartlein.sequential
palettable.scientific.diverging
palettable.scientific.sequential
palettable.matplotlib
palettable.mycarta
palettable.tableau
palettable.wesanderson

共计1587小类【每个小类还有逆类,名称后面加“_r”即可】上面16大类下面有数个小类,例如,著名BI软件Tableau的配色条palettable.tableau这一大类,下面有palettable.tableau.BlueRed_12,palettable.tableau.GreenOrange_12等等数个小类:

palettable.tableau.BlueRed_12
palettable.tableau.BlueRed_6
palettable.tableau.ColorBlind_10
palettable.tableau.Gray_5
palettable.tableau.GreenOrange_12
palettable.tableau.GreenOrange_6
palettable.tableau.PurpleGray_12
palettable.tableau.PurpleGray_6
palettable.tableau.TableauLight_10
palettable.tableau.TableauMedium_10
palettable.tableau.Tableau_10
palettable.tableau.Tableau_20
palettable.tableau.TrafficLight_9

也就是类似上面的这种有1587行


위 내용은 세계적으로 팔레트에 담긴 "실습"의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 Python当打之年에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제