在变量中绘制连续和离散数据

Posted

技术标签:

【中文标题】在变量中绘制连续和离散数据【英文标题】:Plotting continuous and discrete data in the variable 【发布时间】:2020-09-04 07:45:29 【问题描述】:

我正在努力在网格中绘制雪深数据集,深度作为连续变量。 但是,网格中的一些地块被部分覆盖。这些分为 >50% 和

当我尝试使用 ggplot 2 绘制数据时:

myplot <- ggplot()+
geom_tile(data=table, aes(x=factor(Row), y=Colum, fill= Snow_depth))+
scale_fill_gradient(low="#0066CC", high="#FF3333")

我当然会得到错误:

Error: Discrete value supplied to continuous scale

我怎样才能包含这些离散数据并给它们一个清晰的颜色标签,以便所有信息都显示在同一张图像中?

【问题讨论】:

您能否更新为可重现的样本?参考***.com/questions/5963269/… 检查scale_fill_discrete() 【参考方案1】:

编辑:

再想一想,一种方法可能是在覆盖的地块上使用ggpattern 中的模式:

set.seed(3)
table <- data.frame(Row = rep(1:9,times=9), Colum = rep(1:9,each=9),
                   Snow_depth = runif(81,10,100),
                   Cover = as.logical(round(runif(81,0,1),0)))

#remotes::install_github("coolbutuseless/ggpattern")
library(ggpattern)
library(ggplot2)
ggplot(data=table, aes(x=as.factor(Row), y=as.factor(Colum))) +
  geom_tile(aes(fill= Snow_depth)) +
  scale_fill_gradient(low="#0066CC", high="#FF3333") +
  geom_tile_pattern(aes(pattern_alpha = Cover),
                    fill = NA, pattern = 'crosshatch',
                    pattern_fill = "black",
                    pattern_angle = 45,
                    pattern_density = 0.1,
                    pattern_spacing = 0.025,
                    pattern_key_scale_factor = 0.5) +
  scale_pattern_alpha_discrete(range = c(0,0.5), labels = c("No","Yes")) +
  labs(x = "Row",y = "Column")

【讨论】:

这很接近,但不是我在这里需要的(尽管它对其他东西很方便)我的问题是它不是单独字段中的连续数据和离散数据,而是连续的(雪深度)或离散(部分覆盖,50%)。该数据记录在同一变量下。我可以将它们一分为二,但随后我将在任何一个领域都有一个 NA。不幸的是,我似乎无法使用 ggpattern(不适用于 3.6.2 版)。

以上是关于在变量中绘制连续和离散数据的主要内容,如果未能解决你的问题,请参考以下文章

连续型变量与离散型变量

请问连续性变量和离散性变量有啥区别.

如何区别离散变量和连续变量?

统计学离散型变量和连续型变量有啥区别?

统计学离散型变量和连续型变量有啥区别?

统计学离散型变量和连续型变量有啥区别