-
1. (Matlab) 알아두면 유용한 매트랩, 그래프 생성2) Tech 2020. 1. 21. 16:56반응형
안녕하세요!
매트랩을 처음 시작하다가 그래프를 배웠었는데 굉장히 유용하다고 생각이 되어서
블로그에 적어보게 되었습니다! 부족하지만 잘봐주세요 ㅎㅎ
사실 매트랩을 처음 공부하시는 분들은 행렬이니 벡터니 이런 개념을 먼저 접하시는 분들이 많은데
그런내용이 나오면 빨리 포기 하고싶은 마음이 생겨버리죠..!
그래서 매트랩 그래프 부터 접근하여 매트랩의 편리함과 유용함에 대해 공유해볼까 합니다!
즉, 분석할 파일의 로딩과 로딩된 파일내 data를 손쉽게 그래프로 그려보는 방법인데요.
1. 매트랩을 실행 후
2. 그래프를 그릴 파일이 있는 폴더로 접근합니다.
http://www.eia.doe.gov/emeu/aer/txt/ptb1108.html에서 제공한 gasprices.csv 파일을 사용했습니다.
(파일 다운로드 출처: https://github.com/HyunchanMOON/lessons/blob/master/lessons/gasprices.csv)
3. 아래 이미지와 같이 파일을 더블클릭 합니다.
(또는 명령어로도 접근이 가능합니다. 추후 table로 불러오는 법에서 다뤄봐요!)
4. 다음과 같은 창이 뜹니다.
Excel과 같은 편집툴로 오픈했을 때와 유사한 모습으로 창이 뜨는 걸 보실 수 있습니다.
참고로 매트랩 Import 창은 매트랩 메인 홈탭에서 'Import Data'를 누르셔도 동일하게 사용가능합니다!
5. 다음으로 오픈한 파일 내 data를 matlab으로 가져와야겠죠? 그럼 가져올 data를 골라봅시다!
4번째, 5번째, 9번째 열에 위치한 France, Germany, South korea의 Gas Price 정보를 가져오겠습니다.
이 data를 토대로 년도별 가격변화를 보려고 하니 첫번째 열에 위치한 년도 정보도 가져와야겠죠?!
6. 모두 고르셨으면 data를 가져와 봅시다.
아래 이미지와 같이 data가 속한 열을 한열씩 드래그 하셔야하는데요
이때 숫자만 있는 열부터 드래그 하셔야한다는 사실을 기억해주세요!!
(아직 Table Type을 배우지 않았으니 주의해주세요!!)
위 이미지와 같이
data 드래그 -> output type column vector 선택 -> V 표시 선택 하시면
Matlab 메인 화면 한켠에 위치한 workspace 탭에 data가 저장된것을 보실수 있습니다.
이를 마우스 우클릭 하여 France로 변경하여 가져온 어떤 data인지 잊지않도록 표기해줍니다.
아래는 Year(년도) data 까지 모두 가져와 이름까지 변경했습니다.
7. 가져온 data를 묶어서 mat파일로 저장
workspace에 임시 저장된 data들을 모두 선택하여 우클릭 하시면 다른이름으로 저장하기탭이 있습니다.
보관할 폴더를 선택 후 저장하면 csv file 에서 불러온 특정 data를 언제든 사용하실 수 있습니다!!
+ (mat filer 확장은 매스 웍스에 의해 개발되었고, MAT 파일은 변수, 함수, 배열 및 다른 정보를 포함하는 데이터 파일로 분류된다. MAT 파일은 한 사용자가 MATLAB 환경 설정에 속하는 버전으로 저장을 선택으로 다양한 형식으로 저장할 수 있습니다. * 출처 https://www.openthefile.net/ko/extension/mat )
저는 4개의 data를 묶어 FGK.mat로 저장했습니다.
이 과정을 거치면 변수 및 data를 초기화 했을 때 다시 불러올수 있는 장점이 있습니다.
예를 들면 command window에 clear 명령어를 습관적으로 또는 실수로 입력했을 때 유용하죠!
+ clear 임시저장된 변수와 data를 정리해주는 명령어.
+ clc command window를 정리해주는 명령어.
!! 여기까지 잘따라오셨나요?! 이제 다음으로 분류한 data를 가지고 그래프를 그려보겠습니다!!
1. Data loading
먼저 저희가 앞에서 .mat 파일로 저장했던 FGK.mat를 불러올게요.
- load('파일이름.확장자') data Loading 함수
Command Window에
load('FGK.mat') 입력 후 Enter! 해봅시다.
Workspace 창을 보면 Data들이 나타났죠?!
2. 그래프 그리기
나타난 데이터로 년도별 나라들의 gasprice를 확인하겠습니다.
1차 그래프는 plot(x,y)형태를 사용합니다.
plot(x,y)의 x와 y는 x축과 y축에 들어갈 data이름을 가져온 것이죠!
- plot(x축, y축) 그래프 생성 함수
그럼 France의 년도별 gasprices을 알아볼까요
명령창에 plot(Year, France) 라고 입력하면!
년도별 프랑스의 가스가격 그래프가 이쁘게 그려졌네요!
여기에 독일의 그래프를 추가해보려합니다.
plot(Year, Germany)를 입력해보세요!
figure1에 추가되진 않고 새로운 창이 뜬걸 보실수 있습니다...
같은 figure1에 그래프를 추가하려면 hold on 이라는 명령어를 사용해줘야합니다.
아래와 같이 말이죠!
plot(Year, France)
hold on
plot(Year, Germany)hold off
추가가 끝나면 hold off로 닫아줍니다.
두 그래프가 두가지 색으로 구분돼서 나타났네요!
이렇게 데이터가 얼마 되지 않을 땐 괜찮지만 좀 더 추가가 되면 파악이 어려울 수 있습니다.!
아래를 볼까요.
- 매트랩 그래프 굵기, 모양 설정
plot(Year, France, 'o--', 'linewidth', 2)
hold on
plot(Year, Germany, ':x', 'linewidth', 2)
plot(Year, SouthKorea, '-hexagram', 'linewidth', 3)hold off
(초기화후 다시 입력해보세요!)
몇가지 단어들이 추가 되었는데요.
- plot(x,y, '그래프선 모양', 'linewidth', 굵기)
이런 정보를 추가로 기입하시면 그래프의 구분이 쉽게됩니다!
훨씬 보기 쉽죠?!
아래 명령어를 입력하시면 더욱 보기 편한 그래프가 완성됩니다!!
title('Gas Prices') % 그래프 title 달기
xlabel('Year') % x축 label 달기
ylabel('Price ($ Per Gallon)') % y축 labe 달기
grid on % gird 생성
legend('France', 'Germany', 'Korea') % Legend 추가(입력한 계열 순으로 적어주세요!)
오늘은 여기서 마치겠습니다! data를 불러오고 그래프를 그려봤습니다!
따라서 실행해보시면 더 익숙해지실거에요~ 다음시간에 찾아뵙겠습니다!
-----------------------------------------------------------------------------------------
아래는 전체 코드 입니다.
Editor에 저장하여 복습하면 좋을거 같아요!
Editor 창에서 %% 표시는 구문을 구분 지어주는 역할을 합니다!
구분된 구문을 개별로 실행하고 싶다면 Ctrl + F5를 눌러보세요!
clear
clc
%% loading Data
load('FGK.mat')
%% ploting
plot(Year, France, 'o--', 'linewidth', 2)
hold on
plot(Year, Germany, ':x', 'linewidth', 2)
plot(Year, SouthKorea, '-hexagram', 'linewidth', 2)
hold off
%% Editing
title('Gas Prices')
xlabel('Year')
ylabel('Price ($ Per Gallon)')
grid on
legend('France', 'Germany', 'Korea')반응형'2) Tech' 카테고리의 다른 글
[Tip!] Jupyter notebook 단축키 모음 (0) 2020.03.02 [Tip!] github에서 csv file(파일) 다운로드 받는 법 (4) 2020.02.28 3. (Matlab) 알아두면 유용한 매트랩, 벡터의 연산 & 통계함수 (2) 2020.02.19 1-2. (Matlab) 알아두면 유용한 매트랩, 다양한 그래프 함수 및 기능 (0) 2020.02.03 2. (Matlab) 알아두면 유용한 매트랩, 벡터와 행렬 (0) 2020.01.21