2015-06-08 8 views
8

ile farklı yönlerde aynı ölçekler nasıl ayarlanır Veri çerçevesindeki her bir değişken çifti için 2d yoğunluklu kontur çizimini oluşturmak için aşağıdaki veri kümesi ve kodlarım var. Benim sorum, ggpirs2'de ölçeklerin, ggplot2'deki farklı yüzler için aynı ölçek gibi farklı çiftler için aynı olduğundan emin olmak için bir yol olup olmadığıdır. Örneğin, x ölçeğini ve y ölçeğini her bir resim için [-1, 1] 'den istiyorum.ggpairs()

Şimdiden teşekkürler! Bunun doğrudan ggpairs işlevinden mümkündür ama ggpairs gelen bir arsa ayıklamak ve değiştirmek ve sonra geri kaydedebilirsiniz emin değilim

library(GGally) 
ggpairs(df,upper = list(continuous = "density"), 
    lower = list(combo = "facetdensity")) 

#the dataset looks like 
print(df) 
     x   y   z    w 
1 0.49916998 -0.07439680 0.37731097 0.0927331640 
2 0.25281542 -1.35130718 1.02680343 0.8462638556 
3 0.50950876 -0.22157249 -0.71134553 -0.6137126948 
4 0.28740609 -0.17460743 -0.62504812 -0.7658094835 
5 0.28220492 -0.47080289 -0.33799637 -0.7032576540 
6 -0.06108038 -0.49756810 0.49099505 0.5606988283 
7 0.29427440 -1.14998030 0.89409384 0.5656682378 
8 -0.37378096 -1.37798177 1.22424964 1.0976507702 
9 0.24306941 -0.41519951 0.17502049 -0.1261603208 
10 0.45686871 -0.08291032 0.75929106 0.7457002259 
11 -0.16567173 -1.16855088 0.59439600 0.6410396945 
12 0.22274809 -0.19632766 0.27193362 0.5532901113 
13 1.25555629 0.24633499 -0.39836999 -0.5945792966 
14 1.30440121 0.05595755 1.04363679 0.7379212885 
15 -0.53739075 -0.01977930 0.22634275 0.4699563173 
16 0.17740551 -0.56039760 -0.03278126 -0.0002523205 
17 1.02873716 0.05929581 -0.74931661 -0.8830775310 
18 -0.13417946 -0.60421101 -0.24532606 -0.1951831558 
19 0.11552305 -0.14462104 0.28545703 -0.2527437818 
20 0.71783902 -0.12285529 1.23488185 1.3224880574 

cevap

2

enter image description here gibi

arsa görünüyor.

Bu örnek, grafik matrisinin alt üçgeni üzerinde dönerek mevcut x ve y ekseni ölçeklerini değiştirir.

data(tips, package = "reshape") 
## pm is the original ggpair object 
pm <- ggpairs(tips[,c("total_bill", "tip", "size")]) 
## pm2 will be modified in the loop 
pm2 <- pm 
for(i in 2:pm$nrow) { 
    for(j in 1:(i-1)) { 
    pm2[i,j] <- pm[i,j] + 
     scale_x_continuous(limits = c(-5, 75)) + 
     scale_y_continuous(limits = c(-5, 10)) 
} 
} 

pm parsellerin tamamı matris üzerinden döngü ediyorum sorununuzu çözmek için

enter image description here

ve pm2 bu

enter image description here

benziyor böyle görünüyor ve x ve y ölçeklerini -1 ila 1 arasında olacak şekilde ayarlayın.