簡體   English   中英

在x軸上繪制矩陣的所有列

[英]Plotting all columns of a matrix on the x-axis

我想在x軸上分別繪制矩陣的所有列,y軸是矩陣列中的值。 為了說明創建矩陣時我正在尋找的東西:

test=matrix(c(1,4,3,2,3),ncol=5,nrow=5)

並使用它繪制它

boxplot(test)

矩陣列的每個箱線圖分別出現在x軸上。 我想要的是這個,除了只有點在y軸而不是箱線圖上。

並不是說以這種方式布局數據是有意義的,但這里是:

test=matrix(c(1,4,3,2,3),ncol=5,nrow=5)
plot(rep(1:5, 5), c(t(test)))

在此輸入圖像描述

使用reshape2庫來融化數據

library(reshape2)

test = matrix(c(1, 4, 3, 2, 3), ncol = 5, nrow = 5)

plot(melt(test)[, 2:3])

在此輸入圖像描述

boxplot有一個plot參數:

plot
如果為TRUE (默認值),則生成一個boxplot。 如果不是,則返回箱圖所基於的摘要。

您感興趣的結果位於stats組件中。

然后你可以使用matpointsmatplot(..., type = 'p')

請注意,您必須轉置結果以獲得所需的繪圖

matpoints(t(boxplot(test, plot = FALSE)$stats), pch = 19, col = 'black')

暫無
暫無

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

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