2012-08-14 4 views
0

.dat 파일을 사용하여 색상 코딩 된 2D 그래프를 플로팅해야합니다. 여기에서 제 3 열은 또한 변화 matlab에 색상 코드 그래프를 그릴

 
48.000000 0.000184 0.400000 
48.500000 0.000185 0.400000 
49.000000 0.000186 0.400000 
49.500000 0.000187 0.400000 
50.000000 0.000187 0.400000 
50.500000 0.000186 0.400000 
51.000000 0.000186 0.400000 
51.500000 0.000186 0.400000 
52.000000 0.000185 0.400000 
52.500000 0.000184 0.400000 
53.000000 0.000184 0.400000 
53.500000 0.000182 0.400000 
54.000000 0.000180 0.400000 
54.500000 0.000179 0.400000 
55.000000 0.000177 0.400000 
55.500000 0.000174 0.400000 
56.000000 0.000172 0.400000 

으로 파일 데이터가 배치된다. 거의 3000 라인이 있습니다. 첫 번째 변수와 두 번째 변수 사이에 2 차원 그래프를 코드화하고 3 번째 변수의 높이를 색상으로 표시해야합니다. 누군가 나를 도울 수 있습니까?

답변

0

사용 >> gscatter(column1,column2,column3)

당신의 3 열은 같은 값을하기 때문에, 줄거리는 다음과 같이 표시됩니다 enter image description here

을하지만, 세 번째 칼럼에 약간의 노이즈를 추가, 당신은 이런 식으로 뭔가를 얻을 것 : 당신이 열 3의 값을 기준으로 어두운 색에서 밝은 색으로 이동하는 데이터의 색상을 원하는 경우

enter image description here

+0

필자는 열 3이 공간 때문에 변경된다는 문제를 썼습니다. 파일의 일부만 작성했습니다. .05 – user1598764

+0

의 변형으로 .4에서 .90로 변경됩니다. 괜찮습니다.내 예제는 그룹화 변수가 실제로 변할 때 두 번째 플롯을 얻을 것임을 보여 줬다. 이것이 도움이 될까요? 그렇지 않다면 왜요? – AGS

+0

실제로 나는 낮은에서 높은 [밝거나 어둡거나 그 반대] 색상을 임의로 설정해야합니다. – user1598764

3

는, 당신은 단지 공을 사용하는 것이 가장 좋은 선택이 될 수 있습니다기능. 문서

캐터 상기 (X, Y, S, C) (크기가 동일 함) 벡터의 X 및 Y에 의해 지정된 위치에 표시 컬러 서클.

S

는 C 각 아이콘의 색을 결정 ... 각 마커의 영역을 결정한다. C가 X와 Y와 같은 길이의 벡터이면 C의 값은 현재 색상 맵의 색상에 선형으로 매핑됩니다.

즉, 데이터에서 사용할 색상 맵을 명시 적으로 선택할 수 있습니다. COL1, COL2,하여 데이터의 세 개의 열 각각의 값을 포함 COL3 가정하면, 다음 코드 COL1과 X를 형성 COL2과 (각각), Y 위치와를 정의 COL3와 산점도를 그리는 것 각 점의 색.

scatter(col1, col2, 25, col3, '.'); 
colormap(gray); 

산점도 드로잉 후, 명시 적으로 작은 값 COL3에서 포인트 어두운되도록 회색에 컬러 맵을 설정하고, 큰 값들은 광 것이다. 이 예제에서 마커 영역은 25이고 마커 유형은 scatter 함수의 3 번째 및 5 번째 매개 변수에 지정된 점 ('.')입니다.

회색 외에 사용할 수있는 많은 다른 색상 맵이 있습니다. 예를 들어, 또는 구리 더 미학적으로 기쁘게 수 있습니다. colormap 함수에 대한 doc은 다른 옵션에 대한 자세한 정보를 제공합니다.

+0

'gscatter'는 똑같습니다. 구문은'>> gscatter (col1, col2, col3, your_color_map (groups of)) '입니다. – AGS

+0

그래프의 색상을 높이에 따라 설정해야합니다. 예를 들면. for 칼럼이 .40이면 핑크색, 칼럼 3이 .50 빨강이면 .9와 같이 다른 색상으로 변경해야합니다. 파란색이어야합니다. 다음 코드를 사용하여 파일을 엽니 다. fid = fopen ('abc_1. 33_0.6.dat '); XYZ = fscanf (fid, '% f % f % f', [3 Inf]); fclose (fid); – user1598764

+0

@AGS - 사과드립니다. gscatter를 호출 한 후에도 colormap을 호출하는 것이 효과가 없다는 것을 알았지 만, 명시 적으로 매개 변수로 colormap을 전달할 수 있다는 것을 알지 못했습니다. 예,이 경우 두 옵션이 거의 동일합니다. – grungetta

관련 문제