반응형
타진
개발 그라운드
타진
전체 방문자
오늘
어제
  • 분류 전체보기 (136)
    • 프로그래밍 (65)
      • Java (28)
      • Android (1)
      • Web (19)
      • Web-Spring (12)
      • R (5)
      • Angular (0)
    • 운영체제 (17)
      • Linux (14)
      • Docker(vmware) (3)
    • 클라우드 (4)
      • aws (0)
      • aws_handson (4)
    • 개발문제해결 (25)
      • Exception (12)
      • 알고리즘 문제풀이 (13)
    • 그 외 개발관련 (23)
    • 일상 (1)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • vmmem
  • 라이젠
  • cfn
  • alt tab
  • 일어키보드
  • 키보드매핑
  • wsl_update_x64
  • 4700u
  • docker
  • wsl2
  • jdk14
  • chromium edge
  • ubuntu terminal
  • stackset
  • github
  • 빠른 시작 켜기
  • Github CLI
  • GIT
  • handson
  • github actions
  • AWS
  • 빠른 시작 끄기
  • transit gateway peering
  • 정올알고리즘 정올 알고리즘
  • 크로미움 엣지
  • angular cli
  • docker desktop
  • docker ps
  • 문법 체크
  • transit_gateway

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
타진

개발 그라운드

python으로 그래프 만들기 - pycharm
그 외 개발관련

python으로 그래프 만들기 - pycharm

2017. 12. 8. 13:17
반응형



csv_exam.csv

mtcars.csv




파이썬에서 그래프를 만들기 위해서는


numpy, matplotlib 과 같은 라이브러리가 필요하다.


pycharm에서 file - setting - project: lab-python 으로 들어간다.


그리고 + 버튼을 클릭하고


pandas를 검색한다.





인스톨하자




matplotlib도 검색한다.





인스톨한다.




그 다음 csv 샘플 파일을 인터넷이든, 자신의 파일이든 하나 구해오자


그리고 아래와 같이 자신의 패키지에 넣어주자.





샘플파일을 넣었으면 코드를 한번 짜보자



"""
python에서 데이터 분석을 할 때 자주 사용되는 패키지:
numpy, pandas, matplotlib, cipy

"""

from pandas.io.parsers import read_csv
import matplotlib.pyplot as plt # 그래프를 위한 라이브러리

# csv 파일에서 data frame 만들기

df = read_csv('csv_exam.csv')

print('Type:', type(df)) # 데이터 프레임의 row(observation)의 갯수
print('Shape:', df.shape) # 데이터 프레임의 (row, col)
print('Head:\n', df.head(3)) # 데이터 프레임의 처음 일부 데이터
print('tail:\n', df.tail(3))
print('Values:\n', df.values)
print('Describe:\n', df.describe()) # 요약 통계량(최솟값, 최댓값, 중앙값, 평균 ...)

print('-'*30)

import는 csv 파일을 읽는 라이브러리와

그래프를 위한 라이브러리이다.


먼저 df 변수를 선언한 후 csv_exam.csv를 읽어오고


위에서부터

shaep(행,열), head(위에서부터 3까지의 데이터), tail(아래서부터 3개의 데이터), 

values(값), descibe(요약통계량)


을 뜻하는 메소드들이다.


이를 실행하게 되면




위와 같은 결과가 나온다.


위의 데이터를 이용하여 영어 점수의 박스플롯을 그려보자


# matplotlib을 이용한 상자 그래프(box plot)
plt.boxplot(df.english)
plt.savefig('exam-english.png')
plt.show()

그 후 matplotlib를 통해 boxplot 그래프를 그릴 수 있다.


첫째줄은 그래프를 그리는 메소드

두번째는 이를 이미지로 저장하겠다는 메소드

세번째 줄이 창을 띄워 결과를 확인하는 메소드이다.


이를 실행하게 되면


이러한 결과가 나온다


영어 점수의 박스플롯이다.




그럼 다음으로


R에서 기본으로 제공하는 mtcars.csv를 이용하여


산점도 그래프를 만들어보자




"""

mtcars 데이터 프레임 분석, 산점도 그래프(scatter plot) 그리기

"""

from pandas.io.parsers import read_csv
import matplotlib.pyplot as plt

df = read_csv('mtcars.csv')
print(df.shape)
print(df.head(5))
print(df.describe())

# mpg(연비) box plot
plt.boxplot(df.mpg)
plt.savefig('mpg.png')
plt.show()

# 자동차 배기량(disp)과 연비(mpg)의 상관 관계 산점도 그래프
plt.scatter(df.disp, df.mpg)
plt.xlabel('disp')
plt.ylabel('mpg')
plt.show()

# 자동차의 무게(wt)와 연비(mpg)의 산점도 그래프
plt.scatter(df.wt, df.mpg)
plt.xlabel('weight')
plt.ylabel('miles per gallon')
plt.grid()
plt.savefig('wt-mpg.png')
plt.show()

기본적인 그래프 그리기는 위와 같다


다른 점으로는 scatter 함수를 이용한 산점도 그래프와

xlabel, ylabel에 라벨을 붙여주는 함수

grid 함수는 결과에 선을 그어주어 시각적으로 더 이해하기 쉽게 표현하는 기능을 한다.



결과는 아래와 같다.



grid를 빼고 그렸다. grid를 넣으면 x, y 값마다 선이들어간다.

반응형

'그 외 개발관련' 카테고리의 다른 글

github - git bash 터미널 계정 변경  (5) 2018.02.02
python에서 Oracle Instant Client 사용하기  (0) 2017.12.08
Python 개발환경 설치  (0) 2017.12.05
    '그 외 개발관련' 카테고리의 다른 글
    • Meven에서 자바(Java) SDK 최신버전 사용하기
    • github - git bash 터미널 계정 변경
    • python에서 Oracle Instant Client 사용하기
    • Python 개발환경 설치
    타진
    타진
    vulnerable1324@gmail.com

    티스토리툴바