[PYTHON] matplotlib 색상 표로 seaborn color_palette
PYTHONmatplotlib 색상 표로 seaborn color_palette
Seaborn은 color_palette라는 함수를 제공합니다.이 함수를 사용하면 플롯을위한 새로운 color_palettes를 쉽게 만들 수 있습니다.
colors = ["#67E568","#257F27","#08420D","#FFF000","#FFB62B","#E56124","#E53E30","#7F2353","#F911FF","#9F8CA6"]
color_palette = sns.color_palette(colors)
나는 matplotlib에서 사용할 수있는 cmap로 color_palette를 변환하고 싶지만 어떻게 할 수 있는지 알지 못합니다.
슬프게도 "cubehelix_palette", "light_palette"...와 같은 함수는 "as_cmap"매개 변수를가집니다. "color_palette"는 불행히도 없습니다.
해결법
-
==============================
1.seaborn 팔레트의 색상 목록을 matplolib의 색상 맵으로 변환해야합니다 (제안 된 변경 사항은 @RafaelLopes에서 thx로 변경).
seaborn 팔레트의 색상 목록을 matplolib의 색상 맵으로 변환해야합니다 (제안 된 변경 사항은 @RafaelLopes에서 thx로 변경).
import seaborn as sns import matplotlib.pylab as plt import numpy as np from matplotlib.colors import ListedColormap # construct cmap flatui = ["#9b59b6", "#3498db", "#95a5a6", "#e74c3c", "#34495e", "#2ecc71"] my_cmap = ListedColormap(sns.color_palette(flatui).as_hex()) N = 500 data1 = np.random.randn(N) data2 = np.random.randn(N) colors = np.linspace(0,1,N) plt.scatter(data1, data2, c=colors, cmap=my_cmap) plt.colorbar() plt.show()
-
==============================
2.색상 팔레트를 생성하는 대부분의 해상 메소드에는 선택적 인수 as_cmap이 있으며이 인수는 기본적으로 False입니다. Matplotlib 색상 맵을 직접 가져 오는 데 사용할 수 있습니다.
색상 팔레트를 생성하는 대부분의 해상 메소드에는 선택적 인수 as_cmap이 있으며이 인수는 기본적으로 False입니다. Matplotlib 색상 맵을 직접 가져 오는 데 사용할 수 있습니다.
import seaborn as sns import matplotlib.pylab as plt import numpy as np # construct cmap my_cmap = sns.light_palette("Navy", as_cmap=True) N = 500 data1 = np.random.randn(N) data2 = np.random.randn(N) colors = np.linspace(0,1,N) plt.scatter(data1, data2, c=colors, cmap=my_cmap) plt.colorbar() plt.show()
-
==============================
3.첫 번째 대답은 어떻게 든 올바르지 만 너무 많은 불필요한 정보로 너무 길다. 정확하고 간단한 대답은 다음과 같습니다.
첫 번째 대답은 어떻게 든 올바르지 만 너무 많은 불필요한 정보로 너무 길다. 정확하고 간단한 대답은 다음과 같습니다.
sns.color_palette ()를 matplotlib 호환 cmap으로 변환하려면 두 줄의 코드가 필요합니다.
from matplotlib.colors import ListedColormap cmap = ListedColormap(sns.color_palette())
-
==============================
4.추가 팁 - 연속 컬러 바 / 컬러 맵을 원할 경우, 시보른에서 필요로하는 색상 수 256을 더하면 colorcheme이 훨씬 도움이됩니다.
추가 팁 - 연속 컬러 바 / 컬러 맵을 원할 경우, 시보른에서 필요로하는 색상 수 256을 더하면 colorcheme이 훨씬 도움이됩니다.
cmap = ListedColormap(sns.color_palette("Spectral",256))
from https://stackoverflow.com/questions/37902459/seaborn-color-palette-as-matplotlib-colormap by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] Python에서 문자열을 풀링합니까? (0) | 2018.10.22 |
---|---|
[PYTHON] sqlalchemy flush () 및 삽입 된 ID를 얻으려면? (0) | 2018.10.22 |
[PYTHON] 어떻게 numpy 배열에 열을 추가하려면 (0) | 2018.10.22 |
[PYTHON] 언제 sqlalchemy back_populates를 사용해야합니까? (0) | 2018.10.22 |
[PYTHON] matplotlib plot_surface 명령의 Colorbar (0) | 2018.10.22 |