首页 > 解决方案 > 使用 ggplot2 和 tidypaleo 绘制地球化学数据的地层图

问题描述

我正在尝试创建一个地球化学元素数据的地层图,这应该可以使用包 tidypaleo。

我想要将深度(cm)下核设置为 y 轴的不同元素数据的多个图。数据如下所示。

数据图像

我正在使用这段代码:

ggplot(wapITRAX, aes(x =BrTi , y = wapITRAX$Depth))+
labs(y = "Depth (cm)")+
geom_lineh()+
theme_classic()+
scale_y_reverse()

但是,这只绘制了一个元素,我正在尝试实现这样的情节Image of plot

> dput(head(wapITRAX))
structure(list(Depth = 0:5, IncCoh = c(6.049230907, 5.975282432, 
5.736199822, 5.658584418, 5.659008377, 5.597103404), BrTi = 
c(50.50197628, 
22.09236453, 23.48370927, 18.62638581, 14.36924414, 17.48777896
), AlIncCOh = c(16.69633736, 8.200449193, 23.70907643, 20.32310407, 
28.62692352, 26.44224866), BrCl = c(8.04090623, 4.306048968, 
3.417836951, 3.156895904, 2.787628518, 2.059316731), FeTi = 
c(332.715415, 
235.9371921, 372.726817, 390.7871397, 396.986099, 495.2624867
), CaTi = c(4.071146245, 3.27955665, 4.395989975, 3.677383592, 
3.028670721, 4.523910733), ZrRb = structure(c(363L, 447L, 407L, 
395L, 450L, 410L), .Label = c("#DIV/0!", "0.447638604", 
"0.478169284", 
"0.54554134", "0.548501778", "0.561420163", "0.579454254", 
"0.579498861", 
"0.580801291", "0.589758019", "0.590194076", "0.590277778", 
"0.591357754", 
"0.592870544", "0.593851133", "0.598519653", "0.599931082", 
"0.600979737", 
"0.601426307", "0.611710677", "0.617065868", "0.618499405", 
"0.621310093", 
"0.627720871", "0.63775246", "0.64005168", "0.643958869", 
"0.644371941", 
"0.645605974", "0.645661658", "0.646672915", "0.647348952", 
"0.651578947", 
"0.652401176", "0.656186383", "0.657906264", "0.658835905", 
"0.662074554", 
"0.662361624", "0.669589393", "0.67103429", "0.671371769", 
"0.674335863", 
"0.674781688", "0.676097561", "0.676639083", "0.677849462", 
"0.680497925", 
"0.680610514", "0.680725971", "0.683906537", "0.68855859", 
"0.689067202", 
"0.692353115", "0.692732291", "0.695411392", "0.696067091", 
"0.696794872", 
"0.699376436", "0.701762744", "0.702015197", "0.702432938", 
"0.70361991", 
"0.705235754", "0.705426357", "0.708084164", "0.708258528", 
"0.708925221", 
"0.715226656", "0.715263314", "0.717828827", "0.718975706", 
"0.719799305", 
"0.720363636", "0.72476489", "0.725426857", "0.725461098", 
"0.726030739", 
"0.7267645", "0.726998188", "0.727170554", "0.727533265", 
"0.730362368", 
"0.731182796", "0.735042735", "0.735849057", "0.736184046", 
"0.737214792", 
"0.738692342", "0.742223591", "0.742639327", "0.742714724", 
"0.744126167", 
"0.745790081", "0.746207701", "0.746606335", "0.747041077", 
"0.749019608", 
"0.751204307", "0.751326495", "0.752443737", "0.752994012", 
"0.753398969", 
"0.754587869", "0.755151515", "0.755466053", "0.756316411", 
"0.757107679", 
"0.759175941", "0.76070965", "0.761635833", "0.763760166", 
"0.763861189", 
"0.764076577", "0.765001936", "0.765509391", "0.765795207", 
"0.76598579", 
"0.767080745", "0.767225748", "0.767262192", "0.770291777", 
"0.771194699", 
"0.772540984", "0.774533358", "0.77486376", "0.777252364", 
"0.778319123", 
"0.778445883", "0.779076739", "0.779310345", "0.782186577", 
"0.78238342", 
"0.782541093", "0.785497178", "0.787594824", "0.788230584", 
"0.788916736", 
"0.789033068", "0.789052737", "0.789177605", "0.789596048", 
"0.790439133", 
"0.791078234", "0.792993631", "0.794899978", "0.795265235", 
"0.795432921", 
"0.798130469", "0.79861957", "0.798894446", "0.799410029", 
"0.799679487", 
"0.800096223", "0.800119868", "0.800280899", "0.800947004", 
"0.80293448", 
"0.804118993", "0.804120112", "0.805092452", "0.806161301", 
"0.81631016", 
"0.816337149", "0.81638756", "0.81827622", "0.818899466", 
"0.81993865", 
"0.821925431", "0.825329202", "0.825608077", "0.826135414", 
"0.826325411", 
"0.827108292", "0.829798658", "0.832460733", "0.832814584", 
"0.833845295", 
"0.833908046", "0.833980583", "0.83741705", "0.837604457", 
"0.838292367", 
"0.838860231", "0.839741935", "0.846485664", "0.846740374", 
"0.84679304 
 1", 
"0.84734599", "0.850027518", "0.850077882", "0.854863613", 
"0.85565883", 
"0.85591192", "0.857095047", "0.858967536", "0.85897779", 
"0.859192457", 
"0.859239235", "0.860408412", "0.860505166", "0.8609918", 
"0.862821134", 
"0.867779204", "0.872207328", "0.872918493", "0.873888706", 
"0.874140666", 
"0.877452229", "0.879856851", "0.88003663", "0.880155093", 
"0.881013197", 
"0.882190156", "0.882319978", "0.883029342", "0.883316008", 
"0.884908053", 
"0.885431692", "0.885849846", "0.889082969", "0.89763062", 
"0.898384089", 
"0.898527865", "0.9", "0.900719424", "0.904636261", "0.904913848", 
"0.905223479", "0.908485273", "0.911212059", "0.916470588", 
"0.917162698", 
"0.917470525", "0.917952884", "0.918054256", "0.918781726", 
"0.922268448", 
"0.925987182", "0.926287744", "0.933958724", "0.939701616", 
"0.940987438", 
"0.941196465", "0.943041526", "0.946832078", "0.947419907", 
"0.948080043", 
"0.949085366", "0.950099404", "0.950502912", "0.950704225", 
"0.953596288", 
"0.954868709", "0.95505992", "0.955361596", "0.956422018", 
"0.95671509", 
"0.959064327", "0.96165309", "0.964232489", "0.965528048", 
"0.965874467", 
"0.968717195", "0.970270821", "0.971573209", "0.973415133", 
"0.974608081", 
"0.974986972", "0.978223496", "0.97935022", "0.980142566", 
"0.981730052", 
"0.982819606", "0.987483236", "0.989587207", "0.991002571", 
"0.991932655", 
"0.995306859", "0.997555012", "1.001706485", "1.002357873", 
"1.005146199", 
"1.010493827", "1.011544012", "1.013038906", "1.013469577", 
"1.015357613", 
"1.01541976", "1.015544041", "1.015937059", "1.016162826", 
"1.019393939", 
"1.019529957", "1.019994873", "1.028932491", "1.029518072", 
"1.030101225", 
"1.032310705", "1.03344968", "1.036769138", "1.037322515", 
"1.041150092", 
"1.041459782", "1.041961577", "1.042347697", "1.047411444", 
"1.048390581", 
"1.057811121", "1.060218978", "1.065395654", "1.06921167", 
"1.071509648", 
"1.073730469", "1.076014602", "1.077266637", "1.079983072", 
"1.083003953", 
"1.086196504", "1.086445657", "1.0867266", "1.0905", "1.092152628", 
"1.094730942", "1.095692666", "1.1074142", "1.109534807", 
"1.111154446", 
"1.111188325", "1.113985094", "1.114045618", "1.128810226", 
"1.129375525", 
"1.132705479", "1.154833837", "1.155201819", "1.158940397", 
"1.161348047", 
"1.162953533", "1.175788329", "1.178036097", "1.179280397", 
"1.18116463", 
"1.198506534", "1.203134068", "1.207592892", "1.208610568", 
"1.212525667", 
"1.212841855", "1.214403157", "1.216756112", "1.228462377", 
"1.23305986", 
"1.241758242", "1.258212878", "1.265571914", "1.265707797", 
"1.272666444", 
"1.279325988", "1.289559543", "1.291191103", "1.296541003", 
"1.305111821", 
"1.315201411", "1.342263532", "1.344827586", "1.347944377", 
"1.352831595", 
"1.377717391", "1.37771934", "1.385440181", "1.403358682", 
"1.411889597", 
"1.412269549", "1.412544902", "1.433843384", "1.444088526", 
"1.473706353", 
"1.50172117", "1.508521601", "1.53030303", "1.532658694", 
"1.537642783", 
"1.54340949", "1.558746736", "1.595342983", "1.596774194", 
"1.596969697", 
"1.630653266", "1.702558635", "1.70468948", "1.718568102", 
"1.740819711", 
"1.760157274", "1.775510204", "1.804859813", "1.814081408", 
"1.816513761", 
"1.849050827", "1.870188679", "1.880195599", "1.887061404", 
"1.91858679", 
"1.929152149", "1.944140197", "1.946996466", "1.986547085", 
"2.007683864", 
"2.070983811", "2.099778271", "2.156359393", "2.159613059", 
"2.163963964",      "2.25951087", "2.261603376", "2.329896907", 
"2.402555911", "2.414500684", 
"2.444075305", "2.450268817", "2.484520124", "2.51119403", 
"2.515064562", 
"2.526086957", "2.554", "2.609715243", "2.61965812", "2.643854749", 
"2.704166667", "2.883275261", "3.013186813", "3.02739726", 
"3.206896552", 
"3.320930233", "3.411627907", "3.688931298", "3.709677419", 
"3.748267898", 
"3.878865979", "3.936440678", "3.994230769", "33.15909091", 
"4.095854922", 
"4.29330254", "4.390957447", "4.514634146", "4.6367713", 
"4.847665848", 
"5.284023669", "5.387755102", "6.171339564", "6.183908046", 
"6.36121673", 
"6.847826087", "7.003496503", "7.193220339", "8.160550459", 
"8.751879699"
), class = "factor"), MnFe = c(0.012176723, 0.010329834, 
0.009460859, 
0.004488071, 0.0033725, 0.003435313), MnIncCoh = c(169.4430276, 
331.1977339, 490.5686845, 279.5752228, 272.3091921, 286.0408118
), CuRb = c(0.392971246, 1.484304933, 0.735426009, 0.491651206, 
1.142857143, 0.4345898)), row.names = c(NA, 6L), class = 
"data.frame")

标签: rggplot2

解决方案


使用您发布的数据。这应该近似于所需的设计。

第一步,使用pivot_longertidyr 的函数将数据从宽格式转换为长格式。

然后使用“深度”作为自变量和参数值作为因变量绘制数据。
然后用于facet_wrap()分隔地块。 coord_flip()将使自变量(深度)出现在 y 轴上。

#fixed 1 column of data.
originaldata$ZrRb <- as.numeric(as.character(originaldata$ZrRb))
library(tidyr)
#Make wide
wapITRAX<-pivot_longer(originaldata, -1, names_to="parameter", values_to = "value")

library(ggplot2)
ggplot(wapITRAX, aes(x = Depth , y = value))+
   labs(x = "Depth (cm)")+
   geom_line() +
   theme_classic() +
   coord_flip() +
   scale_x_reverse() +
   facet_wrap(vars(parameter), nrow=1, scales = "free_x")

在此处输入图像描述


推荐阅读