2011-07-31 3 views
13

행렬 작업을 수행 할 때 적어도 연산의 행방과 열거의 성격에 대한 대략적인 아이디어를 얻으려면 내 계산 결과가 무엇인지 알 수 있어야합니다.매트릭스를 쉽게 시각화하는 방법은 무엇입니까?

x 축이 열을 나타내고 y가 행을 나타내며 점의 색이나 크기가 셀 값을 나타내도록 실제 행렬을 플로팅 할 수 있습니까?

궁극적으로 나는 여러 개의 그림을 표시하고 싶습니다. 방정식의 우변과 좌변.

a <- matrix(rnorm(100), ncol = 10) 
b <- diag(1,10) 
c <- a*b 

par(mfrow = c(1,3)) 
plot.matrix.fn <- function(m) { 
    #enter answer to this question here 
} 
lapply(list(a,b,c), plot.matrix.fn) 

갱신 : 여기

은 몇 가지 예제 코드는이 질문을 게시하기 때문에, 내가 여기에 몇 가지 좋은 사례가 있음을 발견 What techniques exists in R to visualize a "distance matrix"?

+0

최근 게시물도 확인해보십시오. http://stackoverflow.com/questions/6883618/plotting-a-heat-map-for-an-upper-or-lower-triangular-matrix –

답변

17

당신은 같은 (특정 요구에 매개 변수를 조정)

image(t(m[nrow(m):1,]), axes=FALSE, zlim=c(-4,4), col=rainbow(21)) 

enter image description here

7

것은 (하나의 플롯에 대한 ?image를 참조하는 행을 주 1 맨 아래에 있음) 및 기존 플롯에 하나 이상의 표현을 추가하는 경우는 ?rasterImage입니다. 먼저 매트릭스에서 스케일링이나 다른 변형을 원할 수 있습니다.

+0

그게 내가 찾는 것입니다. 감사! – Abe

4

되지 않음 대답 같은 생산하는 것이 아니라 더 긴 설명을 시도 할 수 있습니다.

나는 grid.raster을 사용하여 행렬을 그리기위한 패키지 작업을 해왔지만, 아직 릴리스 준비가되지 않았습니다. 귀하의 예는

layout

library(gridplot) 
row_layout(a, b, c) 

나는 사용자 정의 함수를 작성하는 것은 lattice 또는 기본 그래픽 매개 변수의 10 초를 조정 것보다 더 쉬울 것을 발견, 읽을 것이며, ggplot2는 축 일부 제어 부족하다.

그러나 처음부터 그래픽 함수를 작성하는 것은 레이아웃과 위치 지정과 같은 중요한 작업을 다시 작성하는 것을 의미합니다. 잘하면 Hadley의 scalesguides 패키지를 사용하면 더 쉽게 사용할 수 있습니다. 전반적인 디자인이보다 안정적으로 보이면 기능을 gridExtra에 추가 할 것입니다.

관련 문제