MATLAB 색상 그리기
작도 코드
clear;
clc;
%%%%%%%% %%%%%%%%
[m,n]=meshgrid(0:100);%100*100
%%%%%%%% %%%%%%%%
A=load('D:\Seminar\8_Tencent20160608\FuzzyLogicMike_UnityProject\expectationData_101X101.txt');
surf(m,n,A);
%%%%%%%% %%%%%%%%
map=ones(100,3);
c=linspace(1,0)';
map(1:100,[2,3])=[c,c];
colormap(map);
colorbar;
%%%%%%%% %%%%%%%%
set(gca,'xtick',0:10:100);
set(gca,'xticklabel',{'0%','10%','20%','30%','40%','50%','60%','70%','80%','90%','100%'});
set(gca,'yticklabel',{'0m','10m','20m','30m','40m','50m','60m','70m','80m','90m','100m'});
view(2);
meshgrid 사용법
meshgrid는 샘플링 포인트를 만드는 격자에 사용됩니다
예를 들면 x=1:3을 알 수 있다.y=10:14;[X,Y] = meshgrid(x,y)
X = 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
Y = 10 10 10 11 11 11 12 12 12 13 13 13
meshgrid의 함수는 이렇게 엮어야 한다. x=x1:d1:x2;y=[y1:d2:y2]’;X=ones(size(y))*x;Y=y*ones(size(x))
linspace 사용 방법
linspace는 Matlab에서 지정한 범위 내의 지정한 수량 포인트를 생성하는 데 사용되며, 인접한 데이터의 경계가 같고, 줄 벡터를 되돌려줍니다.호출 방법: linspace(x1, x2, N)
기능: x1, x2 사이의 길이가 N인 줄 벡터를 생성하는데 사용되며 인접 데이터의 경계가 같다.여기서 x1, x2, N은 각각 시작값, 끝값, 원소 개수이다.N이 기본이면 기본 점 수는 100입니다.
예를 들어 다음과 같다. X=linspace(5100,20)%는 5에서 100 범위 내의 20개의 데이터를 생성하고 인접 데이터의 경계가 같다.
X = 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
PS: X=[5:5:100]와 같은 효과를 냅니다.
xtick,xticklabel
간단하게 말하자면 xtick은 눈금(작은 세로선)이다.xticklabel 눈금 값 (세로 아래의 값).
set(gca,'xtick', -pi:pi/2:pi)이란 말은 수동으로 x축의 각도를 설정하고 -pi에서 pi 사이를 간격마다 pi/2로 작은 세로줄을 긋는 것을 의미한다.set(gca,'xticklabel', {'-pi','-pi/2','0','pi/2','pi'})이란 말은 방금 그은 작은 세로줄에 수치를 표시하는 뜻이다.만약 당신이 그것을 set (gca, 'xticklabel', {'a', 'b', 'c', 'd', 'e'}) 로 바꾸면 그 작은 세로선 아래는: a, b, c, d, e가 됩니다.
colormap
map=ones(100,3);
c=linspace(1,0)';
map(1:100,[2,3])=[c,c];
colormap(map);
colorbar;
surf를 사용할 때colormap으로 분포된 색을 설정합니다.간단하게 말하면 N*3의 매트릭스 맵을 설정하면 123열은 각각 R G B의 값(0~1)을 대표하고 첫 줄은surf Z에서 가장 작은 값으로 표시되는 색이고 마지막 행동은surf Z에서 가장 큰 값이 표시되는 색이다. 맵 행렬을 어떻게 배치하는가가 색도의 색 범위를 결정한다.
xlsread
Example 1— Reading Numeric Data
The Microsoft Excel spreadsheet file testdata1.xls contains this data:
1 6
2 7
3 8
4 9
5 10
To read this data into MATLAB, use this command:
A = xlsread('testdata1.xls')
A =
1 6
2 7
3 8
4 9
5 10
읽기.txt 파일에서 행렬로
만약 txt 안이 행렬의 형식 (숫자만) 이라면 직접
A=load('D:\ \TestFile.txt')
A =
1 2 3
8 6 9
2 4 2
CSharp 쓰기 대상.txt
using System;
using System.IO;
//
using (StreamWriter sw = new StreamWriter("TestFile.txt")) {
// Add some text to the file.
sw.WriteLine("1 2.21323 3");
sw.WriteLine("8 6 9.123213124324");
sw.WriteLine("2 4 0");
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MATLAB에서 직렬 통신을 실현하는 상세한 절차MATLAB에서 계기기기의 통신 기능을 제공하기 때문에 MATLAB는 직렬 통신을 실현할 수 있다.1. 직렬 통신을 실현하려면 첫 번째 단계는 직렬 대상을 만들어야 한다. MATLAB에서 직렬 대상을 만드는 seri...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.