Моя цель - нанести несколько диагональных опорных линий на график журнала. Эти линии будут представлять C, где C = X x Y. По сути, на графике представлена ссылка на количество материала, где ось X представляет общее количество, а ось Y представляет концентрацию материала. Прилагаемый пример того, что я имею в виду - я сделал этот сюжет в Matlab. Я пытаюсь воспроизвести похожие сюжеты в RStudio;однако geom_abline, кажется, не работает, когда я применяю масштабирование журнала, используя scale_x_log10 и scale_y_log10. Я могу получить линии для построения, когда я не применяю масштабирование журнала. Почему geom_abline, кажется, не работает для масштаба журнала, и как лучше всего построить эти диагональные линии в масштабе журнала, используя библиотеку ggplot2? Заранее спасибо. Код для справки:
library(tidyverse)
breaks <- 10^(-10:10)
minor_breaks <- rep(1:9, 21)*(10^rep(-10:10, each=9))
ggplot(Re1, aes(x = Tonnage, y = Percent.grade, group = Type)) +
geom_point(aes(shape=Type, color=Type)) +
theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank()) +
geom_text_repel(aes(label=Name),size = 3) +
geom_abline(intercept=0.000011,slope=-1*10^-14) +
geom_abline(intercept=3*0.000011,slope=-1*10^-14) +
scale_x_log10(breaks = breaks, minor_breaks = minor_breaks) +
scale_y_log10(breaks = breaks, minor_breaks = minor_breaks) +
annotation_logticks() +
coord_equal() +
theme_bw() +
labs(
x = "Metric Tons",
y = "Weight % Re",
shape = "Deposit Type",
color = "Deposit Type",
title = "Rhenium Grade-Tonnage Model"
)
dput(Re1)
structure(list(Name = structure(c(13L, 2L, 3L, 11L, 12L, 18L,
14L, 19L, 4L, 17L, 23L, 7L, 8L, 22L, 10L, 1L, 9L, 15L, 5L, 24L,
20L, 21L, 16L, 6L), .Label = c("Bagdad", "Bingham", "Butte",
"Castle Dome", "Climax", "Copper Creek", "Ely", "Miami-Inspiration",
"Mineral Park", "Mission-Pima", "Morenci", "Mount Tolman", "Pebble",
"Quartz Hill", "Questa", "Ray", "San Manuel-Kalamazoo", "Santa Rita",
"Sierrita- Esperanza", "Silver Bell", "Thompson Creek", "Tomichi",
"Twin Buttes", "Urad-Henderson"), class = "factor"), Tonnage = c(5.94e+09,
3.23e+09, 5.22e+09, 5.22e+09, 2.177e+09, 3.03e+09, 1.6e+09, 2.262e+09,
1.438e+09, 1.39e+09, 9.4e+08, 7.54e+08, 1.591e+10, 7.11e+08,
9e+08, 1.6e+09, 8.76e+08, 4.24e+08, 8e+08, 4.37e+08, 2.68e+08,
2.12e+08, 1.583e+09, 7.5e+07), Grade = c(4.461e-07, 2.211e-07,
1.121e-07, 8.93e-08, 1.631e-07, 1.069e-07, 1.888e-07, 1.158e-07,
1.599e-07, 1.647e-07, 2.298e-07, 2.653e-07, 1.01e-08, 2.166e-07,
1.5e-07, 8.13e-08, 5.02e-08, 8.96e-08, 4.38e-08, 7.55e-08, 1.157e-07,
1.415e-07, 1.39e-08, 9.33e-08), Percent.grade = c(4.46128e-05,
2.21053e-05, 1.12069e-05, 8.9272e-06, 1.63068e-05, 1.06931e-05,
1.8875e-05, 1.15827e-05, 1.59944e-05, 1.64748e-05, 2.29787e-05,
2.65252e-05, 1.0057e-06, 2.16596e-05, 1.5e-05, 8.125e-06, 5.0228e-06,
8.9623e-06, 4.375e-06, 7.5515e-06, 1.15672e-05, 1.41509e-05,
1.3898e-06, 9.3333e-06), Contained = c(2650L, 714L, 585L, 466L,
355L, 324L, 302L, 262L, 230L, 229L, 216L, 200L, 160L, 154L, 135L,
130L, 44L, 38L, 35L, 33L, 31L, 30L, 22L, 7L), Type = structure(c(4L,
2L, 4L, 4L, 4L, 2L, 5L, 4L, 3L, 4L, 4L, 2L, 4L, 4L, 2L, 4L, 2L,
1L, 1L, 1L, 4L, 5L, 2L, 2L), .Label = c("Climax Mo", "Porphyry Cu",
"Porphyry Cu-Au", "Porphyry Cu-Mo", "Porphyry Mo"), class = "factor")), class = "data.frame", row.names = c(NA,
-24L))
Пример диагональных линий, которые я пытаюсь воссоздать в RStudio
Диагональные линии строятся при удалении #scale _ * _ log10
Когда я использую масштаб _ * _ log10, линии не отображаются