我在R中有一个矩阵,我可以使用matplot进行绘图,但很难自定义绘图。我想使用R包ggplot进行绘图,但是使用矩阵不起作用。我不确定矩阵需要哪些转换才能使数据与ggplot一起使用。
感谢您的帮助。
答案 0 :(得分:1)
您需要将矩阵转换为数据框
mat = cbind(index = seq(1:10), price=7+rnorm(10))
df = as.data.frame(mat)
library(ggplot2)
ggplot(df) + geom_line(aes(x = index, y = price))
答案 1 :(得分:0)
您可以使用评论中提到的 reshape2::melt。
numbers <- sample(c(1:100), 100, replace = T)
data <- matrix( numbers, ncol=10)
rownames(data) <- paste0("row-", seq(1,10))
colnames(data) <- paste0("col-", seq(1,10))
data
d2.df <- reshape2::melt(data, c("x", "y"), value.name = "z")
head(d2.df)