Как не пропустить значения NA на графике оси X? [Р] - PullRequest
0 голосов
/ 05 сентября 2018

Я пытаюсь сделать сюжет, объединяющий три фигуры. (См. Мой рисунок ниже)

Все три имеют значения х, варьирующиеся от 0,0 до 1,0. Но только график, значения которого приближаются к конечному значению x (1.0), имеет весь диапазон оси x.

Глядя на функцию axis (), я вижу, что «конечные (бесконечные, NaN или NA) значения опущены», поэтому имеет смысл, что график, у которого нет значений около 1.0, не будет иметь эквивалент ось х.

Сначала я подумал, что это может быть из-за их размеров, но даже уменьшая cex от графика, ось x продолжает то же самое.

Как я могу обойти эту ситуацию? Я действительно хочу, чтобы у всех трех графиков была вся ось х, варьирующаяся от 0,0 до 1,0.

Сценарий, который я использую, является базовой функцией axis (), например: ось (1, с (0,0, 0,2, 0,4, 0,6, 0,8, 1,0))

Весь код (это немного грязно, извините):

t = c(0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 300, 320, 340, 360)
p = c(0.0, 0.2, 0.4, 0.6, 0.8, 1.0)
par(mfrow=c(1,3))
par(mar= c(5.1, 5, 3, 0))
plot (Pertinencia_Cluster_1, prof, axes = FALSE, type = 'n', xlab = '', 
      ylab = 'Profundidade (m)', cex.main = 0.8)
# rect(0, 153, 4, 190, col = '#fffae6', border = "#fffae6")
# rect(0, 203, 4, 248, col = '#fffae6', border = "#fffae6")
axis(1, p)
axis(2, t)
grid()
lines(Pertinencia_Cluster_1, prof, col = '#cc0000', pch = 16, cex = 0.8)
points(Pertinencia_Cluster_1, prof, col = '#cc0000', pch = 16, cex = 0.8)
legend(0.12, -25, xpd = TRUE, legend = "Pertinência Cluster 1", pch = 16, col = "#cc0000", cex = 1.0)


par(mar= c(5.1, 2.5, 3, 2.5))
plot (Pertinencia_Cluster_2, prof, col = "#008B8B", pch = 17, cex = 1.0, axes = FALSE, xlab = '', 
      ylab = '', cex.main = 0.8, type = 'n')
# rect(0, 115, 4, 153, col = '#fffae6', border = "#fffae6")
# rect(0, 185, 4, 215, col = '#fffae6', border = "#fffae6")
axis(1, p)
grid()
lines(Pertinencia_Cluster_2, prof, col = '#009900', pch = 16, cex = 0.8)
points(Pertinencia_Cluster_2, prof, col = '#009900', pch = 16, cex = 0.8)
legend(0.12, -25, xpd = TRUE, legend = "Pertinência Cluster 2", pch = 16, col = "#009900", cex = 1.0)


par(mar= c(5.1, 0, 3, 5))
plot (Pertinencia_Cluster_3, prof, col = "#008B8B", pch = 17, cex = 1.0, axes = FALSE, xlab = '', 
      ylab = '', cex.main = 0.8, type = 'n')
# rect(0, 0, 4, 87, col = '#fffae6', border = "#fffae6")
axis(1, p)
grid()
lines(Pertinencia_Cluster_3, prof, col = '#0099ff', pch = 16, cex = 0.8)
points(Pertinencia_Cluster_3, prof, col = '#0099ff', pch = 16, cex = 0.8)
legend(0.12, -25, xpd = TRUE, legend = "Pertinência Cluster 3", pch = 16, col = "#0099ff", cex = 1.0)

title('Clay Minerals (Smectite, Palygorskite, Illite, Chlorite & Kaolinite)', outer = T, line = -2)

My plot

1 Ответ

0 голосов
/ 06 сентября 2018

Добавьте xlim=c(0,1) в каждую из ваших plot() команд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...