第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何為具有穩(wěn)定映射的ggplot 2中的分類(lèi)變量分配顏色?

如何為具有穩(wěn)定映射的ggplot 2中的分類(lèi)變量分配顏色?

慕碼人8056858 2019-07-11 15:32:59
如何為具有穩(wěn)定映射的ggplot 2中的分類(lèi)變量分配顏色?在過(guò)去的一個(gè)月里我一直在跟上R的步伐。以下是我的問(wèn)題:在具有穩(wěn)定映射的ggplot 2中,為分類(lèi)變量分配顏色的好方法是什么?我需要一組具有不同子集和不同數(shù)量的分類(lèi)變量的圖形的一致顏色。例如,plot1 <- ggplot(data, aes(xData, yData,color=categoricaldData)) + geom_line()哪里categoricalData有5個(gè)等級(jí)。然后plot2 <- ggplot(data.subset, aes(xData.subset, yData.subset,                                   color=categoricaldData.subset)) + geom_line()哪里categoricalData.subset有三個(gè)等級(jí)。然而,在這兩個(gè)集合中的一個(gè)特定級(jí)別將以不同的顏色結(jié)束,這使得在一起閱讀圖表變得更加困難。是否需要在數(shù)據(jù)幀中創(chuàng)建顏色向量?或者是否有其他方法為類(lèi)別分配特定的顏色?
查看完整描述

3 回答

?
慕森卡

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊

對(duì)于簡(jiǎn)單的情況,如操作中的確切例子,我同意蒂埃里的答案是最好的。但是,我認(rèn)為指出另一種方法是有用的,當(dāng)您試圖在多個(gè)數(shù)據(jù)幀之間維護(hù)一致的顏色方案時(shí),這種方法變得更容易所有這些都是通過(guò)減去單個(gè)大數(shù)據(jù)幀獲得的。如果從單獨(dú)的文件中提取因素級(jí)別,而不是每個(gè)文件中出現(xiàn)所有的因素級(jí)別,那么管理多個(gè)數(shù)據(jù)幀中的因素級(jí)別就會(huì)變得單調(diào)乏味。

解決這一問(wèn)題的一種方法是創(chuàng)建一個(gè)自定義的手動(dòng)顏色刻度,如下所示:

#Some test datadat <- data.frame(x=runif(10),y=runif(10),
        grp = rep(LETTERS[1:5],each = 2),stringsAsFactors = TRUE)#Create a custom color scalelibrary(RColorBrewer)myColors
         <- brewer.pal(5,"Set1")names(myColors) <- levels(dat$grp)colScale <- scale_colour_manual(name = "grp",values = myColors)

然后根據(jù)需要將顏色刻度添加到情節(jié)中:

#One plot with all the datap <- ggplot(dat,aes(x,y,colour = grp)) + geom_point()p1 <- p + colScale#A second plot with only four of
 the levelsp2 <- p %+% droplevels(subset(dat[4:10,])) + colScale


這樣,您就不需要記住或檢查每個(gè)數(shù)據(jù)幀,以確保它們具有適當(dāng)?shù)募?jí)別。


查看完整回答
反對(duì) 回復(fù) 2019-07-11
?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊

最簡(jiǎn)單的解決方案是在設(shè)置子集之前將分類(lèi)變量轉(zhuǎn)換為一個(gè)因子。底線(xiàn)是,您需要一個(gè)因子變量,在您的所有子集中具有完全相同的水平。

library(ggplot2)dataset <- data.frame(category = rep(LETTERS[1:5], 100), 
    x = rnorm(500, mean = rep(1:5, 100)), y = rnorm(500, mean = rep(1:5, 100)))dataset$fCategory <
    - factor(dataset$category)subdata <- subset(dataset, category %in% c("A", "D", "E"))

帶有字符變量

ggplot(dataset, aes(x = x, y = y, colour = category)) + geom_point()ggplot(subdata, aes(x = x, y = y, colour = category)) + geom_point()

帶因子變量

ggplot(dataset, aes(x = x, y = y, colour = fCategory)) + geom_point()ggplot(subdata, aes(x = x, y = y, colour = fCategory)) + geom_point()


查看完整回答
反對(duì) 回復(fù) 2019-07-11
  • 3 回答
  • 0 關(guān)注
  • 2175 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)