【问题标题】:How to show y axis values with colors in background of a plot in R?如何在 R 中的绘图背景中显示 y 轴值和颜色?
【发布时间】:2016-10-07 17:15:57
【问题描述】:

假设我有这个数据集:

d <- data.frame("year"=c(2000:2005), "val"=c(rnorm(6,0,1)))

我想显示valyear,但我不想要线、点或条形图。相反,我想使用val 值显示覆盖整个绘图区域背景的拉伸颜色。有什么建议吗?

【问题讨论】:

  • 我无法理解你的意思。像填充的矩形?也许你可以找到一个看起来相似的情节并链接到它。
  • 是的,类似填充矩形。
  • 对于 ggplot2,您可以通过将年份视为一个因素并将 geom_barwidth = 1geom_tile 与单个假 y 轴字符变量一起使用来获得所需的效果。
  • 这是你想要的吗? ggplot(data=d) + geom_tile(aes(x=year,y=1,fill=val))
  • 在 ggplot 中更容易和更好,但是:barplot(table(d$year),col=colorRampPalette(c('cadetblue1', 'cadetblue4'))(length(d$val))[rank(d$val)]) 是您可以在基础 R 中做到这一点的一种方式。深色 = 高值,浅色 = 低值。

标签: r plot ggplot2 scatter-plot lattice


【解决方案1】:

根据您的描述,您有两个选择:

数据: d &lt;- data.frame("year"=c(2000:2005), "val"=c(rnorm(6,0,1)))

(1)Ggplot

library(ggplot2)
ggplot(data=d) + geom_tile(aes(x=year,y=1,fill=val))

(2) 基础R

barplot(table(d$year),col=colorRampPalette(c('cadetblue1', 'cadetblue4'))(length(d$val))[rank(d$val)])

在基本 R 示例中,深色 = d$val 的较高值,而浅色 = d$val 的较低值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-11
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    • 2015-07-05
    • 1970-01-01
    相关资源
    最近更新 更多