在研究这个答案时,我尝试geom_image()
从ggimage包中绘制图像条,但无法使其工作。geom_image()
修改图像的纵横比,我不知道如何阻止它(或者这是否可能)。我也不清楚用什么单位size
来衡量。从代码的行为方式来看npc
,无论 ggplot2 坐标系如何,它可能位于从 0 到 1 的坐标中?
这是我使用的代码:
require(ggimage)
df_img <- data.frame(phase = c("Interphase", "Prophase", "Metaphase", "Anaphase", "Telophase"),
image = c("http://www.microbehunter.com/wp/wp-content/uploads/2009/lily_interphase.jpg",
"http://www.microbehunter.com/wp/wp-content/uploads/2009/lily_prophase.jpg",
"http://www.microbehunter.com/wp/wp-content/uploads/2009/lily_metaphase2.jpg",
"http://www.microbehunter.com/wp/wp-content/uploads/2009/lily_anaphase2.jpg",
"http://www.microbehunter.com/wp/wp-content/uploads/2009/lily_telophase.jpg"))
df_img$phase <- factor(df_img$phase, levels=df_img$phase)
ggplot(df_img, aes(x = phase, y = 0, image = image)) + geom_image(size = 0.18)
这是生成的图像:
图像应该是这样的:
注意:这是一个专门关于 ggimage 行为的问题。我知道如何使用其他方法生成正确的图像,例如使用draw_image()
来自 cowplot。