1

我想在 R 的现有绘图中使用 grid.table()。但是我无法在图表的右侧找到此表。所以事情是:

首先,我制作数据的直方图:

hist(as.numeric(unlist((vels[counts]))),freq=F,
  col="gray",border="black",ylim=c(0,0.15),
  xlab=paste(names(vels)[counts]),
  main=paste("Weibull fitting",names(vels[counts])))

之后,我实现了一个函数,该函数在现有图表中绘制给出参数 A 和 K 的 Weibull 曲线:

plot_weibull(K_value,A_value)

最后,我想使用 grid.table() 放置一个 data.frame,因为它以非常漂亮的形式显示单元格,并且您可以在单元格中使用斜体和粗体文本。

grid.table(round(values,3),cex=0.75,show.rownames=T,
  show.colnames=T,show.hlines=T)

问题是这张表出现在直方图和曲线前面的设备中心,我希望它在右侧。

毕竟,我想知道一个工具,点击图表,我会得到我的 Weibull 曲线下的面积。

4

1 回答 1

4

hist函数是基本图形,函数grid.table是网格图形。如果没有额外的努力,这两个图形系统不能很好地协同工作(正如您所注意到的)。

最简单的解决方法是使用包中的addtable2plot函数plotrix而不是grid.table. 它可能看起来不一样,但它会很简单。

另一种选择是使用网格图形函数来创建直方图,例如latticeorggplot2包中的某些东西(两者都可以做直方图),然后使用网格图形函数创建特定的视口并用于grid.table将表格放入该视口。

最后,如果您真的想混合它们,请查看gridBase软件包以了解混合网格和基本图形的方法。

于 2012-02-29T23:51:09.780 回答