본문 바로가기
  • 포르쉐타고싶다

인포테인먼트 - development/etc10

[MATLAB] 실제 데이터 처리 해양관측정보시스템의 데이터를 처리해보도록 하겠다. 1. 데이터 모습 확인 2. textread 코드 입력 % 1) 열의 이름 지정 % headerlines: 입력된 수만큼의 line이 headerline으로 처리됨 % delimiter: 처리할 기호를 이어서 입력 [number, yy, mm, dd, hh, mm, temp, psu] = textread('/Users/apple/Documents/MATLAB/인천_2021-01_2021-08.txt', '%u %u %u %u %u %u %f %f', 'headerlines', 6, 'delimiter', '/:-'); - 실행결과 3. 원하는 데이터 plot % 수온과 염분을 정리할 예정 % 1) 열의 이름 지정 % headerlines: 입력된 수만큼의.. 2021. 8. 16.
[MATLAB] 텍스트 파일 읽기: textread 1. textread // a, b, c에 파일의 각 열을 저장한다. // 두 번째 인자로 각 열에 대해 타입을 지정해준다자. u: 정수형, c: 문자 [a, b, c] = textread('/Users/apple/Documents/MATLAB/test.txt', '%u %u %c') 파일형태 실행 결과 타입지정자 종류 2. textread - headerline : 각 열을 설명하는 headerline 제외 - 텍스트 파일에 headerline 추가 - textread에 headerline옵션 추가 % a, b, c에 파일의 각 열을 저장한다. % 두 번째 인자로 각 열에 대해 타입을 지정해준다자. u: 정수형, c: 문자 % headerlines옵션: 1행을 header로 지정 [a, b, c] = .. 2021. 8. 16.
[MATLAB] MATLAB meshgrid 1. 2D그래프 - meshgrid 선언 및 X, Y 지정 x = 1: 10; y = 1: 10; [X, Y] = meshgrid(x, y); X와 Y를 더블클릭하면 다음과 같이 X, Y 각각 전치되어있는 행렬을 띄고있는 것을 알 수 있다. x와 y의 범위를 바꿔서 다시 확인해보자 x = 1: 3; y = 1: 5; [X, Y] = meshgrid(x, y); 2. 3D 그래프 - meshgrid 선언 및 X, Y 지정: mesh x = 1:10; y = 1:10; [X, Y] = meshgrid(x, y); Z = X + Y; mesh(X, Y, Z) % 3d 그래프 생성 X가 1~10 Y가 1~10 이고 z는 x + y의 값을 나타내고있다. 다른, 좀 더 화려한 도표를 만들어보자 x = linspac.. 2021. 8. 16.
[MATLAB] MATLAB - 2D 그래프 1. y값만 입력 plot([1, 2, 3]) 2. x값 리스트와 y값 리스트 입력 plot([2, 5, 7], [1, 2, 3]) 3. 명령창에서 그래프 창 지우기 >> close 4. cos그래프 그리기: linspace x = linspace(0, 4 * pi, 1000) % 0부터 4*pi 사이를 1000등분 y = cos(x) plot(x, y) 5. plot 꾸미기 x = linspace(0, 4 * pi, 1000) % 0부터 4*pi 사이를 1000등분 y = cos(x) plot(x, y, 'r:', 'LineWidth', 5) % 'r:' : 빨간색 점선, 두께는 5 xlabel('x축', 'fontsize', 20) % x축 라벨 폰트사이즈 설정 ylabel('x축') title('x.. 2021. 8. 15.
[MATLAB] MATLAB 반복문/조건문 1. for문 선언 for (i = 1: 1: 3) % 초기값, step, 마지막값 i end >> loop_test i = 1 i = 2 i = 3 >> * step 생략하면 기본으로 1씩 증가하는 loop가 실행된다 * step -1로 해서 거꾸로 loop 가능 2. while i = 0; while i > while_test i = 1 i = 2 i = 3 >> 3. if문 a = [1 2 3 1 0 1]; for (x = 1: 1:length(a)) i = a(x); % matlab에서 리스트의 인덱싱은 소괄호로 한다. if i == 1 disp('a는 입니다.') % disp는 print, console.log역할 elseif i == 0 disp('a는 0입니.. 2021. 8. 15.
[MATLAB] MATLAB 함수 선언 1. 함수 선언 % 함수명과 파일명은 똑같이 해주는 것을 권장(필수인 경우도 있음) function y = a_plus_b(x1, x2) y = x1 + x2 end >> >> a_plud_b(1, 2) 'a_plud_b'은(는) 인식할 수 없는 함수 또는 변수입니다. 정정 제안: >> a_plus_b(1, 2) y = 3 ans = 3 >> d = a_plus_b(1, 2) y = 3 d = 3 >> **변수 선언에서 ';'를 붙여주면 결과창에서 해당 변수 값은 보여지지 않는다 % ㅎ마수명과 파일명은 똑같이 해주는 것을 권장(필수인 경우도 있음) function y = a_plus_b(x1, x2) y = x1 + x2; % ';': 변수 선언에서 ;를 붙여주면 명령창에서 해당 변수값은 보여지지 않는다.. 2021. 8. 15.
[MATLAB] MATLAB 함수 기본 1. reshape: 행렬의 형태를 행 -> 열 순으로 읽어가면서 행렬의 형태를 바꾼다 a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] % A만들기 b = reshape(a, 1, 12) c = reshape(a, 3, 4) 파일실행>> >> matlab_code_function a = 1 2 3 4 5 6 7 8 9 10 11 12 b = 1 4 7 10 2 5 8 11 3 6 9 12 c = 1 10 8 6 4 2 11 9 7 5 3 12 2. flip: 반전(뒤집기) % flip: 뒤집기 a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] % A만들기 d = flipud(a) % ud: updown: 위아래로 뒤집기 e = fliplr(a) % leftright: 좌우반.. 2021. 8. 15.
[MATLAB] MATLAB 행렬 기본 1. 행렬 선언 >> a = [1 2; 3 4] a = 1 2 3 4 2. 행렬 연산 1) 자기연산 a = [1 2; 3 4] a = 1 2 3 4 >> a + 1 ans = 2 3 4 5 >> a * 2 ans = 2 4 6 8 2) 상호연산 >> a = [1 2; 3 4] a = 1 2 3 4 >> b = [5 6; 7 8] b = 5 6 7 8 >> a + b ans = 6 8 10 12 >> a * b // 행렬 곱 ans = 19 22 43 50 >> a .* b // 같은 좌표끼리 곱 ans = 5 12 21 32 3. 행렬 인덱싱 >> a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] a = 1 2 3 4 5 6 7 8 9 10 11 12 >> a(2, 2) ans = 5 >>.. 2021. 8. 15.
shallow copy / deep copy 한 리스트에 대해서 하나는 적용결과로, 하나는 변동가능한 보여주기용으로(앨범 선택) 사용해야한다. 이 두 리스트는 언제는 같으면서도 독립적으로 사용되어야 한다. (앨범에서 사진을 선택하고 적용을 누르지 않고 앨범창을 닫은 다음 다시 앨범 선택버튼을 누르면 이전에 적용하지 않은 의미없는 선택된 이미지들 대신 그 이전에 적용했던, 결정되어있는 리스트를 보여주어야 한다.) 앨범에서 가져온 이미지 리스트를 적용결과 필드, 보여주기용 필드에 각각 넣는다고 해보자 List imageList = [Photo(), Photo(), Photo()]; List _photoList = List();//보여주기용 List _prePhotoList = List();//적용결과용 대표적으로 1) = 으로 넣어주는 방법 2) ad.. 2020. 10. 27.
[etc] 카카오 "ip mismatched! callerIp=xxxxxxxx. check out registered ips." 에러 해결 1. 배경 역시 개발자는 구글링하기 전에 공식 문서를 먼저 뒤져야 한다. Node.js에서 카카오 연동 로그인 구현 중 "ip mismatched! callerIp=xxxxxxxx. check out registered ips." 의 에러가 발생하였다. 분명히 [내 애플리케이션] > [플랫폼] 에 내 퍼블릭 ip를 등록해서 저번달만 해도 됐던 기능이 갑자기 안되서 이유를 찾을 수 없었다. 2. 해결 카카오 개발환경이 업데이트되면서 방식이 바뀐 탓이었다. 접근하고자 하는 나의 ip 등록을 [내 애플리케이션] > [플랫폼] 뿐만 아니라 [내 애플리케이션] > [고급설정] > [허용 IP 주소] 에도 등록해줘야 한다. https://developers.kakao.com/docs/latest/ko/referen.. 2020. 5. 27.