1

我想将风速和污染变量一起包含在一个污染玫瑰或风玫瑰中。该功能windrose()pollutionrose()仅允许包含数据系列而不是风速。

图表应按颜色显示污染浓度,按方向显示风向,按半径显示风速,如图所示。

pollutionRose(data, ws="ws", wd="wd", pollutant = "PM1", 
              breaks = c(0, 10, 20, 30, 40, 50, 60, 70))

windRose(data, ws = "ws", wd = "wd", pollutant = "PM1", 
         breaks = c(0, 10, 20, 30, 40, 50, 60, 70))

它应该是什么样子 在此处输入图像描述

4

1 回答 1

1

您可以使用 openAir 中的极坐标图功能生成一个绘图,显示浓度随风速和风向的变化。我在下面为您提供了带有输出的代码示例,其中 Mock_Data 可以替换为您的输入文件。

library(openair)
library(truncnorm)

#Mock data set providing three sites with 1,000 measurements of wind direction
#wind speed and concentrations of a pollutant, in this case, PM10
Site <- c(rep("Site_A",1000), rep("Site_B", 1000), rep("Site_C", 1000))
ws <- rtruncnorm(n=3000, a=0, b=7, mean=2.5, sd=1.75)
wd <- rtruncnorm(n=3000, a=0, b=359, mean=220, sd=50)
PM10 <- rtruncnorm(n=3000, a=0.00, b=7.50, mean=2.5, sd=0.85)  
Mock_Data <- data.frame(Site, ws, wd, PM10)     

#Polar plot function
polarPlot(Mock_Data,pollutant= "PM10",
      type = "Site", col = "jet",
      key.position= "right",key.header= "mean PM10 (ug/m3)", key.footer=NULL)

给出这个输出—— 使用 openAir 生成的极坐标图 现在,在这里强调一下,使用这个模拟数据集并不是最好的复制现场实际发生的事情。在那里,盛行风向出现,风速因盛行风向而异,并且存在污染源,这意味着您可以指出您可能正在调查的污染物浓度较高的特定区域。尽管如此,这只是该功能的一个示例,在您自己的数据存在的情况下,应该复制您附加的图像。

于 2019-11-21T16:14:20.117 回答