- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下数据框:
id variable value
ID1 1A 91.98473282
ID1 2A 72.51908397
ID1 2B 62.21374046
ID1 2D 69.08396947
ID1 2F 83.39694656
ID1 2G 41.60305344
ID1 2H 63.74045802
ID1 9A 58.40839695
ID1 9C 61.10687023
ID1 9D 50.76335878
ID1 9K 58.46183206
ggplot(data, aes(variable, id)) +
geom_raster(aes(fill = value)) +
scale_fill_gradient(low = "white",
high = "steelblue")
最佳答案
更新 看来该问题已在 ggplot2 的最新版本中得到解决。
这与 id
因子中只有一个级别有关。将 id
因子更改为数字,或更改 id
因子使其具有两个级别,然后图块填充空间。此外,带有原始 coord_equal()
因子的 id
将给出一个又长又窄的图,但再次填充空间。
## Your data
df = read.table(text = "
id variable value
ID1 1A 91.98473282
ID1 2A 72.51908397
ID1 2B 62.21374046
ID1 2D 69.08396947
ID1 2F 83.39694656
ID1 2G 41.60305344
ID1 2H 63.74045802
ID1 9A 58.40839695
ID1 9C 61.10687023
ID1 9D 50.76335878
ID1 9K 58.46183206", header = TRUE, sep = "")
library(ggplot2)
# Change the id factor
df$id2 = 1 # numeric
df$id3 = c(rep("ID1", 5), rep("ID2", 6)) # more than one level
# Using the numeric version
ggplot(df, aes(variable, id2)) +
geom_raster(aes(fill = value)) +
scale_y_continuous(breaks = 1, labels = "ID1", expand = c(0,0)) +
scale_x_discrete(expand = c(0,0)) +
scale_fill_gradient(low = "white",
high = "steelblue")
# Two levels in the ID factor
ggplot(df, aes(variable, id3)) +
geom_tile(aes(fill = value)) +
scale_fill_gradient(low = "white",
high = "steelblue")
# Using coord_equal() with the original id variable
ggplot(df, aes(variable, id)) +
geom_tile(aes(fill = value)) +
scale_fill_gradient(low = "white",
high = "steelblue") +
coord_equal()
关于r - 如何使用 geom_raster 或 geom_tile 填充绘图区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10502273/
我有一个包含 5 列的数据框: N1 mydf$N1 levels(mydf$N1) #[1] "20" "30" "40" "50" "60" "70" "80" "100" "1
自从切换到 ggplot2 2.0.0 后,在 美学< 之外定义瓷砖的 width 和 height 时出现问题。我使用 geom_tile 创建了某种热图,我想在图 block 之间留一点空间,所以
自从切换到 ggplot2 2.0.0 后,在 美学< 之外定义瓷砖的 width 和 height 时出现问题。我使用 geom_tile 创建了某种热图,我想在图 block 之间留一点空间,所以
这个问题在这里已经有了答案: Margin adjustments when using ggplot's geom_tile() (1 个回答) 8年前关闭。 您可以看到一组有水平灰色边缘,而另一组
set.seed(1990) ID ggplot(dataset + , + aes(x=datetime,y= reorder(ID, n),fill=n))+ +
library(tidyverse) ## make data set.seed(3) dat % tbl_df() %>% rownames_to_column('Var1') %>%
使用 geom_tile,我想在每行数据之间放置一条水平线。看起来如果我在美学上使用颜色,它会在水平和垂直方向上放置线条,这不是我想要的。过去,我只是让瓷砖的高度变小,所以它们之间有一些间隔。但是,似
我正在尝试制作一个按 x 轴上的两个离散变量排序的分面 ggplot。问题是我想让垂直相邻的条目都接触。目前,行与行之间存在空间,具体取决于顶部图中与底部图中的因子水平。抱歉,这个可重现的例子有点冗长
我有两个不同的数据框:P1 和 P2。这些数据帧中的每一个都有 3 个不同的列:N1、N2 和一个值 (mean_RMSE)。 N1和N2在15到120之间,对于一条线,N2总是低于N1。 如果我绘制
我试图显示对 2 个调查问题的响应的密度和相关性。每个问题的答案都是因素 1-5,我想制作一个响应组合表的热图。 我的表格是这样的: > table(mydata$v47, mydata$v78)
我有一个数据框,其中包含来自 20 多个国家/地区的 20 多种产品中每种产品的订单数据。我已使用 ggplot2 将其放在突出显示表中使用与此类似的代码: require(ggplot2) requ
我有一个数据框,我想生成一个 geom_tile()从中绘制,但我希望图形的排序不是基于字母顺序而是基于此数据框中的变量。 structure(list(V1 = c("a", "y", "w", "
我有兴趣在 ggplot2 中使用 geom_tile 构建热图,该热图根据某个因素使用不同的渐变高颜色。 下图创建了一个图,其中各个图 block 根据 xy_type 被着色为蓝色或红色,但没有渐
我想创建一个图表来显示每天的工作时间表。我必须处理的数据看起来像这样: dput(head (TiNiSWeek, 3)) structure(list(`04:00` = c(0, 0, 0)
我正在尝试生成 heatmap使用 ggplot 绘图的 geom_tile .我的数据的行数远多于列数。 set.seed(1) df <- data.frame(val=rnorm(100
我用过 geom_tile()用于在同一张图上绘制 3 个变量...... tile_ruined_coop% group_by("bonus","malus","type","coop") %>%
我试过很多次,一个简单的光栅绘图是空的。但是可以绘制子数据框。所以我考虑了 ggplot 中的一些错误?数据框不是很大,大约 10k 行。 df % slice(1:1000) %>% ggp
我堆叠了一个数据框,它显示 group 中每个 id 的 value: df # A tibble: 11 x 3 #> id value group #> #> 1
我需要帮助为 86x86 矩阵分配正确的十六进制颜色代码到 ggplot + geom_tile()。它是一个相关矩阵,我想根据它的值和由 kmeans 聚类生成的类来给它着色。有六种不同的簇/颜色。
假设我有一个像这样的 data.frame: df <- matrix( rnorm(100), nrow = 10) rownames(df) <- LETTERS[1:10] molten <-
我是一名优秀的程序员,十分优秀!