簡體   English   中英

R中具有不同顏色的直方圖樣圖

[英]histogram-like plot with different colors in R

我試圖以直方圖樣式繪制矢量data 這總是很容易,因為plot(data, type="h")完全符合我的要求。 但是,顏色存在問題。 我的矢量data如下所示:

 data = c(1,2,2,3,1,1,2,3,1,2,2,3, ... )

我想看到的,是每個1中的一種顏色繪制,每2不同的顏色和每3同樣。 我試圖實現這一目標

 plot(data, type="h", col=c("red","blue","green")

但它失敗了R圈在顏色矢量上,所以第一個欄是紅色,第二個是藍色,第三個是綠色,第四個是紅色,依此類推。

我非常普遍的解決方案interessted,因為我的data載體不總是由這些數字的123 在許多情況下,向量保存從1到6的數字。

有人知道如何解決這個問題嗎?

您需要創建一個相同長度的顏色矢量,如下所示:

data = c(1,2,2,3,1,1,2,3,1,2,2,3)
colors = c("red","blue","green")
plot(data, type="h", col=colors[data])

這是因為colors[data]看起來像:

print(colors[data])
#  [1] "red"   "blue"  "blue"  "green" "red"   "red"   "blue"  "green" "red"  
# [10] "blue"  "blue"  "green"

試試這個通用方法:

data = c(1,2,2,3,1,1,2,3,1,2,2,3,4,5,6,7,12,3)
colors = rainbow(length(unique(data)))
plot(data, type="h", col=colors[data])
 colors = rainbow(length(unique(data)));
 hist(data, col=colors[data]) 

使用先生。 lapalme的數據(上)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM