Jupyter + Matplotlib > plt.cm.Set2의 표시 (jet와의 차이) | colormap (Set2 등)의 RGB 값 취득

운영 환경
GeForce GTX 1070 (8GB)
ASRock Z170M Pro4S [Intel Z170chipset]
Ubuntu 16.04 LTS desktop amd64
TensorFlow v1.2.1
cuDNN v5.1 for Linux
CUDA v8.0
Python 3.5.2
IPython 6.0.0 -- An enhanced Interactive Python.
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)
scipy v0.19.1
geopandas v0.3.0
MATLAB R2017b (Home Edition)
ADDA v.1.3b6

처리 개요



make_pov_180121.py > bash 처리(2007년)를 Python으로 구현(2018년) > 43분 처리는 3.5초가 되었다

Matplotlib에서 묘화 처리를 하고 있었지만, Povray에서의 처리가 빠른 것을 알았다.
Povray로 처리하는 경우, RGB치를 스스로 설정하게 될 것 같다.

Matplotlib에서 사용하고 있던 것은 Set2라는 컬러 바였다.

Set2를 사용한 코드를 구현해 보았다.

참고 : Jupyter | Matplotlib > 2차원 데이터 시각화 > imshow() | scatter()

code



Jupyter 코드.

test_colorByRGB_180121.ipynb
%matplotlib inline

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
from pylab import rcParams

rcParams['figure.figsize'] = 7, 3
rcParams['figure.dpi'] = 130

def get_value(ax, ay):
    return ax

# 1. get data
NUM_DATA = 10000
x = np.random.rand(NUM_DATA)
y = np.random.rand(NUM_DATA)
color = get_value(x, y)

# 2. draw data
size = 25  # arbitrary

fig = plt.figure()
ax1 = fig.add_subplot(1,2,1)
im1 = ax1.scatter(x, y, size, color, cmap=plt.cm.Set2)
fig.colorbar(im1)

ax2 = fig.add_subplot(1,2,2)
im2 = ax2.scatter(x, y, size, color, cmap=plt.cm.jet)
fig.colorbar(im2)

fig.tight_layout()




알게 된 사항


  • jet에서는 부드럽게 색상이 바뀝니다
  • Set2에서는 간헐적으로 색이 바뀐다

  • RGB 값 획득



    이하의 Jupyter 코드로 취득할 수 있었다.

    test_colorByRGB_180121.ipynb (두 번째 셀)
    %matplotlib inline
    
    import numpy as np
    import matplotlib.pyplot as plt
    import matplotlib.cm as cm
    from pylab import rcParams
    
    for pos in range(0, 10 + 1):
        val = pos / 10.0
        print(val, plt.cm.Set2(val))
    
    

    실행
    0.0 (0.40000000000000002, 0.76078431372549016, 0.6470588235294118, 1.0)
    0.1 (0.40000000000000002, 0.76078431372549016, 0.6470588235294118, 1.0)
    0.2 (0.9882352941176471, 0.55294117647058827, 0.3843137254901961, 1.0)
    0.3 (0.55294117647058827, 0.62745098039215685, 0.79607843137254897, 1.0)
    0.4 (0.90588235294117647, 0.54117647058823526, 0.76470588235294112, 1.0)
    0.5 (0.65098039215686276, 0.84705882352941175, 0.32941176470588235, 1.0)
    0.6 (0.65098039215686276, 0.84705882352941175, 0.32941176470588235, 1.0)
    0.7 (1.0, 0.85098039215686272, 0.18431372549019609, 1.0)
    0.8 (0.89803921568627454, 0.7686274509803922, 0.58039215686274515, 1.0)
    0.9 (0.70196078431372544, 0.70196078431372544, 0.70196078431372544, 1.0)
    1.0 (0.70196078431372544, 0.70196078431372544, 0.70196078431372544, 1.0)
    

    좋은 웹페이지 즐겨찾기