[英]How to read one column value from CSV file in R in distinct format
如何在R中將圖例用於以下數據
ID Gender Age Site Times
1 Male 24 Facebook 10
2 Female 24 Linkedin 10
3 Male 24 Twitter 10
4 Female 24 Myspace 10
5 Male 24 Facebook 10
6 Female 24 linkedin 10
7 Male 24 Facebook 10
讀取我使用過的CSV
pd.readcsv <- read.csv(file = "snsite.csv")
設計我使用的餅圖
pie(pd.freq[order(pd.freq,decreasing = T)],
col = c("Blue","Green","Yellow","Brown","Green"),
border = NA, main = "Site Usage")
現在要在右上角或左上角顯示圖例,如何從csv文件中以不同的形式讀取一列(Site)值並將其存儲在變量中並在圖例函數中使用?
我不確定從哪里獲得pd.freq對象,但是假設您試圖獲取一個餅圖,該餅圖顯示每個站點訪問了每個站點的次數,那么就可以解決問題。
# Read dataframe, I would recommend including the stringsAsFactors = FALSE argument to your read.csv command
pd.readcsv <- read.table(text = "ID Gender Age Site Times
1 Male 24 Facebook 10
2 Female 24 Linkedin 10
3 Male 24 Twitter 10
4 Female 24 Myspace 10
5 Male 24 Facebook 10
6 Female 24 linkedin 10
7 Male 24 Facebook 10",
header = TRUE, stringsAsFactors = FALSE)
# Convert sites to lowercase for proper aggregation
pd.readcsv$Site <- sapply(pd.readcsv$Site, tolower)
# Get vector of unique site names
sites <- unique(pd.readcsv$Site)
# Create aggregate dataframe with total times per site
pd.SumSiteTimes <- aggregate(Times~Site, sum, data = pd.readcsv)
# Create vector for colors
colors <- c("Blue","Green","Yellow","Brown","Green")
# Create pie chart
pie(pd.SumSiteTimes$Times[order(pd.SumSiteTimes$Times,decreasing = T)],
col = colors,
border = NA,
main = "Site Usage")
# Add legend to the plot
legend("topright", sites, cex = .8, fill = colors)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.