2014-08-28 2398 views
0

我正在學習R並使用默認數據集。我試圖以圖形方式顯示餘額,收入和違約情況之間的關係。我設法制作了一張圖表,現在需要幫助着色具體的點。r - 更改散點圖中數據點的顏色

注意:請原諒,如果這個話題已經討論過。我在論壇上尋找類似的帖子,但沒有找到一個。

這裏是我的代碼:

dataset(Default) 

plot(Default$balance~Default$income, col=Default$student, las=1, xlab = "Income", 
    ylab="Balance", main="Income and balance effects on default  
    loans",pch=as.numeric(Default$default), cex = 0.7) 

legend("topright",legend=unique(Default$default), title = "Default?", pch = c(1,2)) 

能否成員幫助我:

  1. 分配不同的顏色,以那些默認(圖中的三角形)
  2. 創建2個傳說:一個其中顯示了人口的分裂(無論是否是學生),第二個列出三角形代表那些拖欠的人,而圈子對於那些沒有這樣做的人也是如此。

編輯:Default數據集位於ISLR包中。感謝@理查德指出了這一點。

+1

我怕我沒有'Default'在我的基礎數據集。它是否在包裝中? – 2014-08-28 23:44:18

+0

第1項:閱讀?點以找出您正在使用的五個三角形中的哪一個。 (如果你着色他們,你可能想要pch = 17,24或25)。然後使用'plot(...,col = ifelse(默認$ default == x,「red」,「black」),...)'其中'x'是您着色三角形的pch。 – Dale 2014-08-29 00:05:50

+0

@Richard:感謝您關注此事。它不是一個單獨的包。它是我的R studio版本3.0.3上預加載的數據集之一。 – sfyn 2014-08-29 00:47:18

回答

0

這裏是給別人參考答案:

plot(Default$balance~Default$income, col=ifelse(Default$default == "Yes", "green",  
Default$student), las=1, xlab = "Income", ylab="Balance", main="Income and balance 
effects on default loans",pch=as.numeric(Default$default), cex = 0.7) 

legend("topright",legend=unique(Default$default), title = "Default?", pch = c(1,2), 
col = c("black", "green")) 

legend("topleft", legend=unique(Default$student), title = "Student?", 
col=c("black", "red"), pch=1)