将表格(对齐的文本块)添加到R中的绘图

将表格(对齐的文本块)添加到R中的绘图,r,plot,legend,R,Plot,Legend,我想在R中的绘图中添加一个小表格(例如图例)。我想到的是: t <- wantedTableMethod( row("param1", "param2", "param3", "param4") , row(value11, value12, value13, cell(value14, adj=0)) , row(value21, value22, value23, value24) , row(value31, value32, value33, cell(value3

我想在R中的绘图中添加一个小表格(例如图例)。我想到的是:

t <- wantedTableMethod(
  row("param1", "param2", "param3", "param4")
  , row(value11, value12, value13, cell(value14, adj=0))
  , row(value21, value22, value23, value24)
  , row(value31, value32, value33, cell(value34, adj=1))
  border = F
)
plot(1,1)
legend("topleft", t)

tplotrix
软件包具有一个
addtable2plot
函数,您可以将
数据帧
矩阵
传递给

使用帮助页面中的示例

library(plotrix)
testdf<-data.frame(Before=c(10,7,5,9),During=c(8,6,2,5),After=c(5,3,4,3))
 rownames(testdf)<-c("Red","Green","Blue","Lightblue")
 barp(testdf,main="Test addtable2plot",ylab="Value",
  names.arg=colnames(testdf),col=2:5)
 # show most of the options
 addtable2plot(0.7 ,8,testdf,bty="o",display.rownames=TRUE,hlines=TRUE,
  vlines=TRUE,title="The table")
库(plotrix)

testdf如果您真的不喜欢外部软件包,那么您也可以在
base
R中实现这个版本:

plot(1, 1)
v = 1:9
legend(
  'topright', ncol = 4L, title = 'Table',
  legend = c(
    '', 'Row1', 'Row2', 'Row3',
    'Col1', v[1:3], 
    'Col2', v[4:6], 
    'Col3', v[7:9]
  )
)


警告编码员,由于
v
将被强制为
字符
,因此必须小心浮点格式(
sprintf
是您的朋友)。如果您愿意的话,还可以使用其他类似于
text.col
的铃声和口哨来帮助增加情节。

您在这里使用什么语言(或包)来创建对象
t
?@mnel:命令/包是我正在寻找的东西。我的示例是用
虚构的R代码编写的。据我所知,这些命令并不存在。我想这可能有助于理解我计划做什么,…这让我想更仔细地看看
plotrix
。漂亮的函数。这确实是解决这个问题的最佳方案,谢谢!您知道如何在图例调用中添加
pt.bg=c(“白色”、“红色”、“黄色”、“绿色”)、bty=“n”、pch=22、
,但每行仅显示一次吗?仅在左侧