[Python] HEX to RGB, RGB to HEX

색상을 표현하는 방법 중에는 RGB와 HEX 있다. 두 가지 방법 모두 Red, Green, Blue 3가지 값을 가지고 색상을 표현한다.

HEX의 경우 ‘#RRGGBB’ 형식으로 표현 되며 각 위치에 RR(Red), GG(Green), BB(Blue)를 00부터 FF 까지의 16진수로 색을 표현한다.
(Ex) Red: #ff0000, Green: #00ff00, Blue: #0000ff

RGB의 경우 (Red, Green, Blue) 3개 채널 형식으로 표현되며 각 위치에 0부터 255까지의 숫자로 색상을 표현 한다.
(Ex) Red: (255, 0, 0), Green: (0, 255, 0), Blue: (0, 0, 255)

모두 Red, Green, Blue 3개의 색상을 조합하는 형태이며 각 자리의 값을 원하는 형식으로 변경해주면 HEX값을 RGB로, RGB값을 HEX로 전환할 수 있다.

  • HEX to RGB
HEX = '#ff0000' #Red
sixCodes = HEX.lstrip('#')
RGB = tuple(int(sixCodes[i:i+2], 16) for i in (0, 2, 4))
print(RGB) #(255, 0, 0)
  • RGB to HEX
RGB = (255,0,0) #Red
sixCodes = '%02x%02x%02x' % RGB
HEX = '#' + sixCodes
print(HEX) #'#ff0000'

Power BI Compare with previous row value

시간에 따라 변화하는 등의 시계열 데이터가 있을 때, 이전 값과 얼만큼 변화 했는지 확인하기 위해서 current row value와 previous row value를 비교 해볼 수 있다.

COVID19 Sample 데이터를 Power BI에 Load 해보자

COVID19-Sample

각 row 데이터를 식별하기 위해서 Index 열을 추가한다.
(참고, 별도의 설정 없이 기본으로 추가된 인덱스는 0부터 시작한다.)

Add Index

이제, 사용자 지정 열을 추가 하여서 Current row에 Previous row value를 추가한다.

사용자 지정 열

사용자 지정 열에는 Script를 추가 할 수 있는데 아래 스크립트를 넣어주면 Previous row에 있는 “인원[명]” 값을 Current row에 추가 할 수 있다.

try 
 #"추가된 인덱스" {[인덱스] + 1} [#"인원[명]"]
otherwise 0
Current row에 Previous row value가 추가됨.

두 개의 값의 비율을 계산하여 증감률을 계산해 낼 수 있다.
다시 한번 사용자 지정 열을 추가 하여 비율 계산 식을 추가한다.

사용자 지정 열
[#"인원[명]"] / [Previous value] * 100

다음과 같이 증감율에 대한 데이터를 확인해 볼 수 있다.

Rate(증감률) 열 추가

만든 증감율 데이터를 가지고 다음과 같이 시각화 할 수 있다.

코로나 차트

선 그래프는 2020년 7월부터 2021년 2월까지 신규 확진자 수를 나타내고 있으며 막대 그래프는 전일 대비 신규 확진자 증감률을 나타내고 있다. 막대 그래프의 색은 증감률 데이터가 100 이하로 감소하면 푸른 계열로 바뀌고, 증가하면 붉은 계열로 바뀌도록 되어 있다.