簡體   English   中英

plot_ly 為 scatter3d 添加兩行而不是 1

[英]plot_ly adding two lines for scatter3d instead of 1

我有一些數據,我想比較一段時間內的輸出。 我可以使用plot_ly創建以下線圖。

library(plotly)
plot_ly(data,
        x = ~x,
        y = ~z,
        z = ~y,
        type = 'scatter3d',
        mode = 'lines',
        color = ~z)

但是,它使 I 直線回到開始日期。

當我將我的結果與 2D ggplot 版本進行比較時,我得到了不同的圖。

data %>% 
  ggplot(aes(x = x, y = y)) +
  geom_line() +
  facet_wrap(~z, ncol = 1)

如何修復plot_ly圖並將垂直曲面添加到 0。即線圖下方的所有顏色。

數據:

data <- structure(list(x = structure(c(17167, 17167, 17167, 17168, 17168, 
17168, 17169, 17169, 17169, 17170, 17170, 17170, 17171, 17171, 
17171, 17172, 17172, 17172, 17173, 17173, 17173, 17174, 17174, 
17174, 17175, 17175, 17175, 17176, 17176, 17176, 17177, 17177, 
17177, 17178, 17178, 17178, 17179, 17179, 17179, 17180, 17180, 
17180, 17181, 17181, 17181, 17182, 17182, 17182, 17183, 17183, 
17183, 17184, 17184, 17184, 17185, 17185, 17185, 17186, 17186, 
17186, 17187, 17187, 17187, 17188, 17188, 17188, 17189, 17189, 
17189, 17190, 17190, 17190, 17191, 17191, 17191, 17192, 17192, 
17192, 17193, 17193, 17193, 17194, 17194, 17194, 17195, 17195, 
17195, 17196, 17196, 17196, 17197, 17197, 17197, 17198, 17198, 
17198, 17199, 17199, 17199, 17200, 17200, 17200, 17201, 17201, 
17201, 17202, 17202, 17202, 17203, 17203, 17203, 17204, 17204, 
17204, 17205, 17205, 17205, 17206, 17206, 17206, 17207, 17207, 
17207, 17208, 17208, 17208, 17209, 17209, 17209, 17210, 17210, 
17210, 17211, 17211, 17211, 17212, 17212, 17212, 17213, 17213, 
17213, 17214, 17214, 17214, 17215, 17215, 17215, 17216, 17216, 
17216, 17217, 17217, 17217, 17218, 17218, 17218, 17219, 17219, 
17219, 17220, 17220, 17220, 17221, 17221, 17221, 17222, 17222, 
17222, 17223, 17223, 17223, 17224, 17224, 17224, 17225, 17225, 
17225, 17226, 17226, 17226, 17167, 17167, 17167, 17168, 17168, 
17168, 17169, 17169, 17169, 17170, 17170, 17170, 17171, 17171, 
17171, 17172, 17172, 17172, 17173, 17173, 17173, 17174, 17174, 
17174, 17175, 17175, 17175, 17176, 17176, 17176, 17177, 17177, 
17177, 17178, 17178, 17178, 17179, 17179, 17179, 17180, 17180, 
17180, 17181, 17181, 17181, 17182, 17182, 17182, 17183, 17183, 
17183, 17184, 17184, 17184, 17185, 17185, 17185, 17186, 17186, 
17186, 17187, 17187, 17187, 17188, 17188, 17188, 17189, 17189, 
17189, 17190, 17190, 17190, 17191, 17191, 17191, 17192, 17192, 
17192, 17193, 17193, 17193, 17194, 17194, 17194, 17195, 17195, 
17195, 17196, 17196, 17196, 17197, 17197, 17197, 17198, 17198, 
17198, 17199, 17199, 17199, 17200, 17200, 17200, 17201, 17201, 
17201, 17202, 17202, 17202, 17203, 17203, 17203, 17204, 17204, 
17204, 17205, 17205, 17205, 17206, 17206, 17206, 17207, 17207, 
17207, 17208, 17208, 17208, 17209, 17209, 17209, 17210, 17210, 
17210, 17211, 17211, 17211, 17212, 17212, 17212, 17213, 17213, 
17213, 17214, 17214, 17214, 17215, 17215, 17215, 17216, 17216, 
17216, 17217, 17217, 17217, 17218, 17218, 17218, 17219, 17219, 
17219, 17220, 17220, 17220, 17221, 17221, 17221, 17222, 17222, 
17222, 17223, 17223, 17223, 17224, 17224, 17224, 17225, 17225, 
17225, 17226, 17226, 17226), class = "Date"), y = c(-0.0367045477032661, 
0.429456221696455, 0.298946768045425, -0.0530501157045364, 0.657595156284515, 
0.284923911094666, -0.0538917072117329, 0.6460880288505, 0.291709721088409, 
0.0252184998244047, 0.635886635805946, 0.284828245639801, 0.0362892858684063, 
0.603276582609396, 0.284290611743927, -0.0255751628428698, 0.557980910583865, 
0.284395158290863, -0.0429346822202206, 0.546278891444672, 0.30083292722702, 
-0.0245261415839195, 0.267402382858563, 0.283861696720123, -0.0316767357289791, 
0.240410132973921, 0.303045958280563, -0.0293124560266733, 0.237432341498788, 
0.303045958280563, -0.0878232195973396, 0.258405393280555, 0.303519457578659, 
-0.0591422282159328, 0.276141530892346, 0.297644734382629, -0.0768811851739883, 
0.272345736564603, 0.303971320390701, -0.0658016055822372, 0.277077610546257, 
0.303574740886688, -0.0666064769029617, 0.30387060175417, 0.296770751476288, 
-0.0657989829778671, 0.289401514746714, 0.307651847600937, -0.0698227062821388, 
0.289136817271356, 0.303574740886688, -0.0645555704832077, 0.308249935485946, 
0.29633766412735, -0.075448676943779, 0.320676689676475, 0.296770751476288, 
-0.0534204207360744, 0.291023617784958, 0.296585887670517, -0.0816904157400131, 
0.293582299200352, 0.303971320390701, -0.0887914896011353, 0.317414778226521, 
0.303574740886688, -0.111749045550823, 0.517643463914283, 0.295290470123291, 
-0.111155368387699, 0.572040039405692, 0.301303833723068, -0.119236908853054, 
0.459865553479176, 0.29406675696373, -0.117561101913452, 0.436499133647885, 
0.281669616699219, -0.136107787489891, 0.423551520507317, 0.285283416509628, 
-0.184299945831299, 0.357376472267788, 0.287496030330658, -0.144057810306549, 
0.356942950340454, 0.304024666547775, 0.00140447332523763, 0.476493098482024, 
0.291076421737671, -0.0307526383548975, 0.44186539266957, 0.284059703350067, 
-0.0215419922024012, 0.438983951171394, 0.283530950546265, -0.0354218930006027, 
0.531418876897078, 0.281669616699219, -0.0422201938927174, 0.501226107298862, 
0.284059703350067, -0.0537268631160259, 0.475916598748881, 0.281198740005493, 
-0.0337317138910294, 0.484015559253749, 0.29406675696373, -0.0419309027493, 
0.489860116911586, 0.29406675696373, -0.0471417270600796, 0.491058052226435, 
0.293595910072327, -0.0499359257519245, 0.456541112682316, 0.29406675696373, 
-0.0460834838449955, 0.470798134629149, 0.301248550415039, -0.0641278401017189, 
0.366634230769705, 0.294516682624817, -0.062415886670351, 0.368575723434333, 
0.30083292722702, -0.0810658037662506, 0.361597645271104, 0.301303833723068, 
-0.0601655542850494, 0.340522122744005, 0.301303833723068, -0.0537656433880329, 
0.372789445973467, 0.29406675696373, -0.0532686524093151, 0.349628781608772, 
0.29406675696373, -0.0485260300338268, 0.390739238762762, 0.30083292722702, 
-0.0531729683279991, 0.395077884953935, 0.301303833723068, -0.0535226799547672, 
0.398301746055949, 0.281669616699219, -0.0506415851414204, 0.383731085632462, 
0.284059703350067, -0.055249247699976, 0.427891237428412, 0.293595910072327, 
-0.0584657974541187, 0.390517649881076, 0.294516682624817, -0.0392029508948326, 
0.404766425665002, 0.293433457612991, -0.0128423580899835, 0.472776579961646, 
0.300775051116943, -0.000802063848823309, 0.456869673507754, 
0.300775051116943, -0.0126229729503393, 0.354188933677506, 0.300775051116943, 
-0.0246341452002525, 0.346893597918097, 0.300775051116943, -0.0238024983555079, 
0.424945826351177, 0.283530950546265, 0.0195363350212574, 0.3771753582987, 
0.293971121311188, 0.00222827959805727, 0.388968283485156, 0.29353803396225, 
-0.015153992921114, 0.235662241815589, 0.632501840591431, -0.0502956174314022, 
0.248108208994381, 0.67486560344696, -0.124765142798424, 0.276724856579676, 
0.654511213302612, -0.00564395030960441, 0.280836041900329, 0.67142128944397, 
-0.0595490112900734, 0.271347829489969, 0.673733949661255, -0.196607321500778, 
0.219816314638592, 0.651745319366455, -0.137158572673798, 0.229453921696404, 
0.654338955879211, -0.0637963712215424, 0.221215779078193, 0.65415370464325, 
-0.0949307754635811, 0.238716686260886, 0.650435209274292, -0.246985018253326, 
0.228034775704145, 0.613207817077637, -0.254788994789124, 0.248697554692626, 
0.613207817077637, -0.249862641096115, 0.224477857467718, 0.610196590423584, 
-0.19719971716404, 0.316426265402697, 0.610196590423584, -0.19545316696167, 
0.288022112334147, 0.613207817077637, -0.0941301956772804, 0.201058812090196, 
0.617750763893127, -0.0324761234223843, 0.200739070191048, 0.61140775680542, 
-0.0361521914601326, 0.201235406217165, 0.615562677383423, -0.0779502168297768, 
0.244429301936179, 0.608823299407959, -0.0683663859963417, 0.206607470056042, 
0.606907486915588, -0.100456930696964, 0.203505311626941, 0.608552694320679, 
-0.0277870260179043, 0.0782593238400295, 0.614877343177795, -0.028205644339323, 
0.0786607882473618, 0.615057945251465, 0.0159411206841469, 0.093389235320501, 
0.613720178604126, 0.00433240318670869, 0.091795727959834, 0.602674245834351, 
0.0493783205747604, 0.0504476375645027, 0.599433839321136, 0.0479346625506878, 
0.0248350417823531, 0.591810941696167, -0.0968107730150223, 0.051359721692279, 
0.612836480140686, -0.106766417622566, 0.0547118026297539, 0.617379426956177, 
-0.105337277054787, 0.0471396479988471, 0.617379426956177, -0.0658326297998428, 
0.0308104604482651, 0.615735650062561, -0.0673577561974525, 0.041023604455404, 
0.614275574684143, -0.073121540248394, 0.00645050616003573, 0.618344187736511, 
-0.0888213738799095, -0.00949895707890391, 0.617452144622803, 
-0.156023293733597, -0.000753584055928513, 0.633314371109009, 
0.0864016264677048, 0.154617818188854, 0.70279586315155, 0.0997499749064445, 
0.0426971155684441, 0.694870948791504, 0.127143919467926, 0.0791654114145786, 
0.710166811943054, 0.185667186975479, 0.186871806392446, 0.623484969139099, 
0.144664570689201, 0.139920372632332, 0.653435468673706, 0.118960104882717, 
0.153784470516257, 0.649945735931396, 0.142046749591827, 0.119161713286303, 
0.670262098312378, 0.195458859205246, 0.126804057275876, 0.677587032318115, 
0.148983538150787, 0.133370211231522, 0.670262098312378, -0.0502456240355968, 
0.164542924962007, 0.664757013320923, -0.0579429641366005, 0.141085497918539, 
0.653303623199463, -0.066293753683567, 0.147841501631774, 0.667596876621246, 
-0.0874636024236679, 0.130065454053693, 0.652771472930908, -0.0304396133869886, 
0.178246322320774, 0.644237518310547, -0.0595042854547501, 0.193143419804983, 
0.615153789520264, -0.111064121127129, 0.169984160340391, 0.622790932655334, 
-0.084382064640522, 0.156942268717103, 0.620253801345825, -0.0469883792102337, 
0.12639589223545, 0.620192766189575, -0.0486434809863567, 0.137116887490265, 
0.620373368263245, -0.0528004430234432, 0.099452295107767, 0.612701892852783, 
-0.169763207435608, 0.129708995227702, 0.625861763954163, -0.110179461538792, 
0.100258043617941, 0.615409255027771, -0.141661688685417, 0.0811948851915076, 
0.617315530776978, -0.0833431631326675, 0.14575181400869, 0.677693128585815, 
-0.169824779033661, 0.125805306248367, 0.655001640319824, -0.129096671938896, 
0.139818842406385, 0.651273250579834), z = structure(c(17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 
17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 
13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 12L, 17L, 13L, 
12L, 17L, 13L, 12L, 17L, 13L, 12L), .Label = c("Barometer", "Holiday", 
"Humidity", "Month 1", "Month 10", "Month 11", "Month 12", "Month 2", 
"Month 4", "Month 7", "Month 8", "Protocol Active", "Rest Variables", 
"Scattered Clouds", "Temp", "Weekday", "Wind"), class = "factor")), class = "data.frame", row.names = c(NA, 
-360L))

關於行,它不會在年底回去,事情是,在X數據軸重復,讓你擁有180倍的值,然后同樣的180個值算賬,該行實際上是在數據的中間. 解決這個問題的一種方法是制作兩個不同的散點並將它們添加到同一個圖形中。

關於y = 0的表面,我並沒有真正在 R 上使用 plotly 並且我現在沒有時間來測試它,但我認為它應該看起來像這樣

fig <- plot_ly(data,
        x = ~x,
        y = ~z,
        z = ~y,
        type = 'scatter3d',
        mode = 'lines',
        color = ~z)

fig <- fig %>% add_surface(
        x = c(min(~x), max(~x)),
        y = c(0, 0),
        z = c(c(min(~z), min(~z)), c(max(~z), max(~z))))

再一次,我並沒有真正使用 R,但我希望你能明白這個想法。 處理多個跟蹤時的一個好方法是從一個空圖 ( fig <- plot_ly() ) 開始,然后開始按需添加跟蹤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM