[Python] matplotlib.pyplot 으로 그래프 그리기

import 부터 하자.

import matplotlib.pyplot as pyplot

하나는 x 축, 다른 하나는 y 축으로 리스트 두개를 가지고 그린다. 예를 보자. scatter()를 썼다.

names = ['Bamtol', 'Mong', 'Justin', 'Jay']
bomb = [8, 1, 12, 10]
pyplot.title('Super Mario Cart 8 Deluxe Score')
pyplot.xlabel('Name')
pyplot.ylabel('Score')
pyplot.scatter(names, bomb, color='green')
pyplot.show()

위의 그래프는 막대 그래프가 더 나아보인다. bar()로 막대 그래프를 그래보자. 각각의 색도 바꿔보자.

names = ['Bamtol', 'Mong', 'Justin', 'Jay']
bomb = [8, 1, 12, 10]
pyplot.title('Super Mario Cart 8 Deluxe Score')
pyplot.xlabel('Name')
pyplot.ylabel('Score')
pyplot.bar(names, bomb, color=[ 'blue', 'red', 'gray', 'green' ])
pyplot.show()

barh()를 쓰면 누은 그래프가 나온다. xlabel()과 ylabel() 바꿔주자.

names = ['Bamtol', 'Mong', 'Justin', 'Jay']
bomb = [8, 1, 12, 10]
pyplot.title('Super Mario Cart 8 Deluxe Score')
pyplot.xlabel('Score')
pyplot.ylabel('Name')
pyplot.barh(names, bomb, color=[ 'blue', 'red', 'gray', 'green' ])
pyplot.show()

plot()을 쓰면 선 그래프가 나온다.

weigh = [ 3.26, 4.5, 5.6, 7.2, 8.9, 10.4, 12.6, 14.2, 16.1, 17.4, 16.8, 16.3, 16.5, 17.0]
pyplot.plot(weigh)
pyplot.title("Bamtol's weigh")
pyplot.xlabel('Days')
pyplot.ylabel('Kg')
pyplot.show()

그려진 그래프의 시작이 1이 아닌 0 부터임에 주의하자. 이걸 1부터로 바꾸고, x 축 찍는 위치도 바꾸고, 마커도 넣어보자.

weigh = [ 3.26, 4.5, 5.6, 7.2, 8.9, 10.4, 12.6, 14.2, 16.1, 17.4, 16.8, 16.3, 16.5, 17.0]
axis_x = list(range(1, 15))
pyplot.title("Bamtol's weigh")
pyplot.xlabel('Days')
pyplot.ylabel('Kg')
pyplot.plot(axis_x, weigh, marker = '.', color = 'green')
pyplot.xticks([1, 4, 7, 10, 13])
pyplot.show()

파이 차트를 그릴 때는 pie()를 이용한다.

names = ['Bamtol', 'Mong', 'Justin', 'Jay']
bomb = [8, 1, 12, 10]
pyplot.title('Results: Score', fontdict={'fontsize': 24})
pyplot.pie(bomb, labels=names, autopct='%1.1f%%', colors=['lightblue','pink','yellow','lightgreen'])

[HTML5&CSS] Dark theme 만들기

다크 테마를 만들기 위해 색상을 다뤄보자.

테마 내의 새로운 HTML element를 몇 개 알고 넘어가자.

  • pre (preformatted): HTML 파일 내에 whitespace를 포함하여 적힌 그대로 보여준다. 일반적으로 monospace font, 즉 고정폭 폰트로 보여준다.
  • abbr (abbreviation): acronym이나 abbreviation을 나타낸다. acronym element는 deprecated되었다. 그렇지만, 하위 호환성을 위해 포함된다.

새로운 CSS background properties도 몇 개 알고 넘어가자.

  • background-image: element의 배경 이미지. url()에 이미지 URL을 넣는다.
  • background-repeat: 배경 이미지를 어떻게 반복할지. 다음 값들을 사용할 수 있다.
    • repeat: 모든 공간을 덮을만큼 반복한다. 잘릴 수 있다.
    • space: 잘림 없이 가능한만큼 반복한다. 비율이 유지되고, 첫번째와 마지막 이미지 사이의 가장자리를 잡기 위한 여백이 공간을 채우기 위해서 바뀐다.
    • round: 이미지가 늘어나거나 줄어들어서 공간을 채운다.
    • no-repeat: 이미지가 반복되지 않는다.

색상 반전시키기

반대 색상을 찾기 위해서 https://www.colortools.net을 이용하자. Opposite Color Tool을 이용하면 반대 색상을 쉽게 얻을 수 있다. 반전시킨 색상을 각 element에 적용한다.

 

HSL function 사용하기

HSL function은 세가지 값으로 색을 만든다. Hue, Saturation, Lightness.

  • H는 색상(Hue)를 나타낸다. 색상환(color wheel)에서 각도를 나타낸다. degree로 나타내던가 또는 radian으로 지정한다. 단위 없이 쓰면 degree이고, 0이 pure red, 120이 pure green, 240이 pure blue이다.
  • S는 채도(Saturation)을 나타낸다. 100% saturation은 완전히 짙은 색, 0%는 완전히 흐린 색, 회색이다. 50%가 “normal” color이다.
  • L은 밝기(lightness)를 나타낸다. 100%는 하얀색, 0%는 검정색이 된다.

따라서 색상을 180 degree 돌리면 반대색이 된다. 회색을 반전시키고 싶을 때는 밝기를 뒤집으면 된다. 회색을 얻고 싶으면 채도를 0으로 바꾸면 된다. 여기서 grayscale을 바꾸고 싶으면 밝기를 바꾸면 된다.

 

CSS Invert Filter

filter: invert() 를 사용해서 뒤집을 수도 있다.

 

[Web] 웹 개발 시 유용한 사이트

웹 개발 시 유용한 사이트들을 정리한다.

[HTML5&CSS] Text based elements

다음 Text based elements를 살펴 보자.

  • Headings
  • Paragraphs
  • Inline text elements
  • Lists

HTML 안의 heading element들은 H1 에서 H6 까지 6단계까지 있다.

문단(paragraph를) 나타내는 태그는 p이다. 문단 단위로 p 태그를 사용해서 나눠준다.

Inline text elements는 여러가지가 있다.
강조(emphasized)를 원한다면 em을 사용한다. 예를 들면, 원하는게 있다면 <em>지금</em> 하라.
정말 중요하게 표시하고 싶다면, strong을 사용한다. 예를 들면, 이건 정말 <strong>중요</strong>한 거.
하이퍼링크를 사용하고 싶다면, a를 사용한다. 예를 들면, <a href=”https://blog.dasomoli.org”>다솜돌이의 블로그</a>
별 뜻 없이 어떤 내용을 다른 내용들과 나누고 싶을 때 사용하는 태그는 span이다. div와의 차이점은 inline으로 사용한다는 점이다. 일반적인 용도로 다른 text들과 다르게 특정 text의 색을 바꾸는데 많이 사용한다. 예를 들면 다음과 같다.

list는 세가지 타입이 있다. unordered list (ul), ordered list (ol), definition list (dl).

unordered list와 ordered list는 list item (li) 으로 항목을 나타낸다.

CSS를 사용해서 list-style 속성으로 square, circle, upper-alpha, upper-roman 등으로 list의 스타일을 정해줄 수 있다.

definition list (dl)은 자주 쓰이진 않는다. 어떤 용어의 정의와 설명을 서술할 때 사용한다. 용어(term)에는 dt를 사용하고, 설명(description)에는 dd를 사용한다. 예를 들면 다음과 같다.

CSS reset 하기

각기 다른 브라우저들이 서로 다르게 렌더링하기 때문에 이를 위해서 CSS를 reset한다.

Eric Mayer가 만든 좀 더 복잡한 CSS reset 코드가 있다. http://meyerweb.com/eric/tools/css/reset/ 에서 찾을 수 있다.

 

CSS text properties들을 알아보자.

두 그룹으로 나눌 수 있다. Text를 다루는 것과 Font를 다루는 그룹. 먼저 text를 보자.

color 속성은 text의 색상(color)를 바꾼다. hexadecimal 아니면 RGB로 표현하던가, 이름을 줄 수 있다. 예를 들면 다음과 같다.

text-align 속성은 left-aligned, centered 혹은 right-aligned 로 text의 정렬 방법을 정한다.

밑줄을 준다든지 하고 싶을 때는 text-decoration 속성을 준다.

취소선을 줄 때는 text-decoration에 line-through를 주면 된다.

대소문자 변환을 위해서는 text-transform 속성을 이용한다. 다음은 모두 대문자가 된다. lowercase를 쓰면 모두 소문자, capitalize를 쓰면 각 단어별 첫 글자만 대문자가 된다.

줄간격을 위해서는 line-height 속성을 이용한다. 각 줄 사이의 vertical spacing을 조절한다.

 

이제 font를 다루는 그룹의 속성들을 보자.

font-family 속성은 어떤 폰트를 쓸지를 결정한다. 첫번째 것을 시도하고 없으면 두번째, 그것도 없으면 세번째 이렇게 나아간다.

font-size 속성은 font 크기를 조절한다. px나 상대적 단위인 em을 사용할 수 있다. em을 사용하면 사용자가 정한 default font size에 따라 그 비율로 조절된다.

font-weight은 font 굵기를 조절한다. 일반적으로 굵은 (bold)를 사용할 때 사용한다. 기본값은 당연히 normal이다.

 

[git] git 설정하기

1. git 설치

sudo apt-get install build-dep git-core git-doc

2. git 구성하기
2.1. username과 email 설정

git config –global user.name “Yang Jeong-Seok”
git config –global user.email “dasomoli@gmail.com

2.2.. git 설정 확인

git config –global –list

2.3.. git color ui 사용

git config –global color.ui “auto”

2.4. 기본 인코딩을 cp949로 바꾸기

git config –global i18n.commitEncoding cp949
git config –global i18n.logOutputEncoding cp949

윈도에서는 LESSCHARSET=latin1 으로 설정해야 로그 메시지를 볼 수 있다.

set LESSCHARSET=latin1

2.5. 기본 에디터를 vim 으로 설정하기

git config –global core.editor “vim”