создать матрицу точечной диаграммы с openair и hexbin - PullRequest
0 голосов
/ 03 февраля 2019

Я работал с пакетами openair и hexbin для создания двух графиков рассеяния с помощью команд функции функции графика рассеяния:

scatterPlot(mydata, x ="Observed" , y = "Model1",xlab=10, ylab=10,method = "hexbin",mod.line=T,auto.text=F, col = "jet", xbin = 30)

scatterPlot(mydata, x ="Observed" , y = "Model2",xlab=10, ylab=10,method = "hexbin",mod.line=T,auto.text=F, col = "jet", xbin = 30)

У меня есть графики рассеяния, ноесли я хочу поместить их в один график и с одним цветом подсчитать, чтобы получить что-то похожее на это: Как мне действовать?

пожалуйста, перейдите по этой ссылке для просмотра изображения: https://ibb.co/rF148kp

1 Ответ

0 голосов
/ 04 февраля 2019

Вы можете реорганизовать свой фрейм данных так, чтобы он имел три столбца - «Наблюдаемый», «Моделируемый» и «Тип модели».Пример -

structure(list(observed = c(2L, 2L, 4L, 4L, 6L, 6L, 8L, 8L, 10L, 
10L, 12L, 12L, 14L, 14L, 16L, 16L, 18L, 18L, 20L, 20L), modelled = c(1L, 
5L, 7L, 2L, 5L, 9L, 13L, 15L, 16L, 14L, 18L, 17L, 10L, 21L, 26L, 
24L, 22L, 28L, 27L, 30L), model_type = structure(c(1L, 2L, 1L, 
2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 
2L), .Label = c("Model 1", "Model 2"), class = "factor")), class = "data.frame", 
row.names = c(NA, 
-20L))

Таким образом, вы можете использовать следующий код -

scatterPlot(mydata, x = "observed", y = "modelled", type = c("model_type"),
        method = "hexbin",mod.line=T,auto.text=F, col = "jet", xbin = 5,
        linear = TRUE, layout = c(2, 1))

Для создания графика, содержащего два графика рассеяния.Обратите внимание, что приведенный выше код устанавливает xbin равным 5 исключительно по той причине, что я использовал небольшой набор данных для целей тестирования.Кроме того, извините орфографическую ошибку в оси Y и коде («смоделировано» должно быть «смоделировано»)!

Scatter plots on one plot

...