亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

最簡單的分組分組方法

最簡單的分組分組方法

慕斯王 2019-11-28 12:47:44
我有以下數據框: Catergory        Reason Species1   Decline       Genuine      242  Improved       Genuine      163  Improved Misclassified      854   Decline Misclassified      415   Decline     Taxonomic       26  Improved     Taxonomic       77   Decline       Unclear      418  Improved       Unclear     117我正在嘗試制作分組的條形圖,將種類作為高度,然后將2種顏色用于類別。我會發布一張我所擁有的圖像,但是我沒有足夠的聲譽點...但這是我的代碼:Reasonstats<-read.csv("bothstats.csv")Reasonstats2<-as.matrix(Reasonstats[,3])barplot((Reasonstats2),beside=T,col=c("darkblue","red"),ylab="number of species",names.arg=Reasonstats$Reason, cex.names=0.8,las=2,space=c(0,100),ylim=c(0,120))box(bty="l")現在,我想要的是不必兩次標記兩個小節并將它們分組在一起,我嘗試將空間值更改為各種事物,并且似乎沒有將小節分開。誰能告訴我我在做什么錯?
查看完整描述

3 回答

?
蝴蝶刀刀

TA貢獻1801條經驗 獲得超8個贊

使用ggplot2:


library(ggplot2)

Animals <- read.table(

  header=TRUE, text='Category        Reason Species

1   Decline       Genuine      24

2  Improved       Genuine      16

3  Improved Misclassified      85

4   Decline Misclassified      41

5   Decline     Taxonomic       2

6  Improved     Taxonomic       7

7   Decline       Unclear      41

8  Improved       Unclear     117')


ggplot(Animals, aes(factor(Reason), Species, fill = Category)) + 

  geom_bar(stat="identity", position = "dodge") + 

  scale_fill_brewer(palette = "Set1")


查看完整回答
反對 回復 2019-11-28
?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

有多種方法可以在R中進行繪圖。lattice是其中之一,并且始終是合理的解決方案,對@agstudy +1。如果要在基本圖形中執行此操作,則可以嘗試以下操作:


Reasonstats <- read.table(text="Category         Reason  Species

                                 Decline        Genuine       24

                                Improved        Genuine       16

                                Improved  Misclassified       85

                                 Decline  Misclassified       41

                                 Decline      Taxonomic        2

                                Improved      Taxonomic        7

                                 Decline        Unclear       41

                                Improved        Unclear      117", header=T)


ReasonstatsDec <- Reasonstats[which(Reasonstats$Category=="Decline"),]

ReasonstatsImp <- Reasonstats[which(Reasonstats$Category=="Improved"),]

Reasonstats3   <- cbind(ReasonstatsImp[,3], ReasonstatsDec[,3])

colnames(Reasonstats3) <- c("Improved", "Decline")

rownames(Reasonstats3) <- ReasonstatsImp$Reason


windows()

  barplot(t(Reasonstats3), beside=TRUE, ylab="number of species", 

          cex.names=0.8, las=2, ylim=c(0,120), col=c("darkblue","red"))

  box(bty="l")


下面是我所做的:我創建了一個矩陣具有兩列(因為你的數據均列)其中列是種計數Decline和Improved。然后,我將這些類別作為列名。我還給了Reasons行名。該barplot()函數可以在此矩陣上運行,但希望數據以行而不是列的形式存在,因此我將其轉置為矩陣。最后,我刪除了一些barplot()不再需要的函數


查看完整回答
反對 回復 2019-11-28
  • 3 回答
  • 0 關注
  • 983 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號