問題:
當使用ggplotly與geom_tile相結合時,在下面的reprex中(見下文),瓷磚被移位。
正如你所看到的,Y值部分偏離了一個位置,X值部分偏離了很多。
版本:我使用 R 3.5.3 和 4.0.1 版,分別使用 ggplot2 3.1.1/3.3.3 版和 plotly 3.9.0/4.9.3 版,都有同樣的問題。
問題:我怎樣才能解決這個問題,使 ggplotly 圖形與原始 ggplot2 圖形具有相同的、正確的瓷磚位置?
Reprex:
library(ggplot2)
library(plotly)
library(data.table)
dt < -結構(list(x <) 運算子">= c(5。 6, 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16,
17, 5, 7。 8, 9。 10, 11。 12, 13。 14, 15。 16, 17, 5。 6, 7。 8, 9, 9, ,
10, 11, 12。 13, 14。 15, 16。 17, 5。 6, 7。 8, 9。 10, 11。 12, 13,
14, 15, 16。 17, 5。 6, 7。 8, 9。 10, 11。 12, 13。 14, 15。 16, 17,
5, 5, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16, 17。 5, 6。
9, 10, 11。 12, 13。 14, 15。 16, 17。 5, 5。 6, 7。 8, 9。 10, 11,
12, 13, 14。 15, 16。 17, 5。 6, 7。 8, 9。 10, 11。 12, 13。 14, 15,
16, 17, 5, 5, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16。 17, 5,
6, 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16。 17, 5, 6。 7, 8。 9, 10,
11, 12, 13。 14, 15。 16,/span> 17。 5, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14,
15, 16, 17, 5, 5。 6, 7。 8, 9。 10, 11。 12, 13。 14, 15。 16, 17,
5, 5, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16, 17。 5, 5。
8, 9, 10。 11,/span> 12, 13, 14。 15, 16。 17, 5。 5, 6, 7。 8, 9。 10, 11,
12, 13, 14, 15, 16。 17, 5。 5, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14,
15, 16, 17。 5, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16。 17, 5,
5, 6, 7。 8, 9。 10, 11。 12, 13。 14, 15。 16, 17, 5。 6, 7。 8, 9, 9, ,
10,/span> 11。 12, 13。 14, 15。 16, 17。 7, 8。 9, 11, 12, 13。 14, 15,
16, 17, 6。 7, 8。 9, 10。 11,/span> 12, 13, 14。 15, 16。 17, 5。
8, 9, 10。 11,/span> 12, 13, 14。 15, 16。 17, 5, 6, 7。 8, 9。 10, 11,
12, 13, 14。 15, 16。 17, 5。 6, 7。 8, 9。 10, 11。 12, 13。 14, 15,
16, 17, 5, 6, 7。 8, 9。 10, 11。 12, 13。 14, 15, 16。 17)。 y = c(1L,
1L,/span> 1L。 1L, 1L。 1L, 1L。 1L, 1L。 1L, 1L。 1L, 1L。 2L, 2L。 2L, 2L, 2L,
2L,/span> 2L。 2L, 2L。 2L, 2L。 2L, 2L。 3L, 3L。 3L, 3L。 3L, 3L。 3L, 3L, 3L,
3L, 3L。 3L, 3L。 3L, 4L。 4L, 4L。 4L, 4L。 4L, 4L。 4L, 4L。 4L, 4L, 4L,
4L,/span> 4L。 5L, 5L。 5L, 5L。 5L, 5L。 5L, 5L。 5L, 5L。 5L, 5L。 5L, 6L,
6L,/span> 6L。 6L, 6L。 6L, 6L。 6L, 6L。 6L, 6L。 6L, 6L。 6L, 7L。 7L, 7L, 7L,
7L,/span> 7L。 7L, 7L。 7L, 7L。 7L, 7L。 7L, 7L。 8L, 8L。 8L, 8L。 8L, 8L, 8L,
8L,/span> 8L。 8L, 8L。 8L, 8L。 8L, 8L。 9L, 9L。 9L, 9L。 9L, 9L, 9L, 9L, 9L,
9L, 9L。 9L, 9L。 9L, 10L, 10L。 10L, 10L。 10L, 10L。 10L, 10L。 10L,
10L, 10L。 10L, 10L。 10L, 11L, 11L, 11L, 11L, 11L。 11L, 11L。 11L,
11L,/span> 11L。 11L, 11L。 11L, 12L, 12L。 12L, 12L,, 12L, 12L。 12L,
12L,/span> 12L。 12L, 12L。 12L, 13L, 13L。 13L, 13L, 13L。 13L, 13L。 13L,
13L,/span> 13L。 13L, 13L。 13L, 14L, 14L。 14L, 14L, 14L。 14L, 14L。 14L,
14L,/span> 14L。 14L, 14L。 14L, 14L, 15L。 15L, 15L, 15L。 15L, 15L。 15L,
15L,/span> 15L。 15L, 15L。 15L, 15L, 15L。 16L, 16L,, 16L, 16L。 16L,
16L,/span> 16L。 16L, 16L。 16L, 16L, 16L, 16L, 17L, 17L。 17L, 17L。 17L, 17L,
17L,/span> 17L。 17L, 17L。 17L, 17L, 17L。 17L, 17L, 18L。 18L, 18L。 18L,
18L, 18L。 18L, 18L。 18L, 18L, 18L, 18L, 18L, 18L, 19L, 19L。 19L,
19L, 19L。 19L, 19L。 19L, 19L, 19L。 19L, 19L, 19L。 20L, 20L。 20L,
20L, 20L。 20L, 20L。 20L, 20L, 20L。 20L, 20L,, 20L,/span> 21L。 21L,
21L,/span> 21L。 21L, 21L。 21L, 21L, 21L。 21L, 21L, 21L。 21L, 22L。 22L,
22L,/span> 22L。 22L, 22L。 22L, 22L,, 22L, 23L, 23L。 23L, 23L。 23L,
23L, 23L。 23L, 23L。 23L, 23L,, 24L, 24L,, 24L, 24L, 24L,
24L,/span> 24L。 24L, 24L, 24L, 24L, 24L。 25L, 25L,, 25L, 25L。 25L,
25L, 25L。 25L, 25L。 25L, 25L,, 26L, 26L,, 26L, 26L。 26L,
26L,/span> 26L。 26L, 26L。 26L, 26L,, 27L, 27L,, 27L, 27L。 27L,
27L, 27L,, 27L, 27L。 27L, 27L)。 顏色 = c(0。 105263157894737,
0.0736842105263158,/span> -0. 136842105263158, -0. 136842105263158, -0.221052631578947,0.105263157894737, 0. 0421052631578947, -0。 031578947368421, -0.136842105263158,-0.178947368421053,/span> -0. 210526315789474, -0. 242105263157895, -0.263157894736842,NA, NA, 0. 761904761904762, 0. 619047619047619, 0.523809523809524,
0.476190476190476, 0.380952380952381, 1. 19047619047619, 1.0952380952381,
1.04761904761905, 0.952380952380952, 0。 904761904761905, NA, NA, NA,
NA, NA, NA。 NA, NA, NA。 NA, NA, NA。 NA, NA, 0。 436923076923077,
0.313846153846154, 0.704615384615385, 1. 56615384615385, 1.44307692307692,
1.19692307692308, 1.13230769230769, 1. 04, 0.947692307692308,
0.916923076923077, 0.898461538461538, 0. 876923076923077, 1.76923076923077,
0.569105691056911, 0.447154471544715, 0. 894308943089431, 0.853658536585366,
0.731707317073171, 0.634146341463415, 0. 58130081300813, 0.33739837398374,
0.313008130081301, 0.272357723577236, 0. 252032520325203, 0.235772357723577,
1.4390243902439, NA, 1. 09195402298851, 1. 07471264367816, 1.47701149425287,
1.4367816091954, 1.83908045977012, 2. 35632183908046, 2.18390804597701,
1.95402298850575, 1.94252873563218, 1. 92528735632184, 1.91379310344828,1.89080459770115, 3. 59770114942529, NA, 0. 457227138643068, 0.752212389380531,
0.604719764011799, 0.471976401179941, 0. 678466076696165, 0.575221238938053,
0.457227138643068, 0.56047197640118, 0. 530973451327434, 0.497050147492625,
0.463126843657817, 0。 548672566371681, NA, 0.
0.165993719156572, 0.122625990728279, 0. 272169881860326, 0.182443547181098,
0.0373859727830118, -0。 091969493046209, -0. 153282488410348, -0.108419321070734,-0.129355465829221,/span> -0. 145057574398086, -0. 157918349035442, -0.0354419021982952,<
NA, 0.336239103362391, 0. 62266500622665, 0. 460772104607721, 0.361145703611457,
0.24906600249066, 0.161892901618929, 0. 386052303860523, 0.311332503113325,
0.261519302615193, 0.23412204234122, 0. 207970112079701, 0.183063511830635,
NA, 0.39348710990502, 0. 251017639077341, 0. 33921302578019, 0.617367706919946,
0.597014925373134, 0.556309362279512, 0. 461329715061058, 0.345997286295794,
0.440976933514247, 0.400271370420624, 0. 37449118046133, 0.347354138398915,
0.831750339213026, 0.820189274447949, 0. 725552050473186, 0.630914826498423,
0.599369085173502,/span> 0.378548895899054,/span> 0. 157728706624606, 0.126182965299685,
0.0630914826498423, 0.517350157728707, 0. 495268138801262, 0.476340694006309,
0.451104100946372, 0.892744479495268, 0. 632743362831858, 0.411504424778761,
0.942477876106195, 0.853982300884956, 0. 809734513274336, 0.721238938053097,
0.676991150442478, 0.455752212389381, 0. 438053097345133, 0.411504424778761,
0.389380530973451, 0.36283185840708, 0. 327433628318584, 0.746268656716418,
0.54726368159204, 0.462686567164179, 0. 412935323383085, 0.114427860696517,
0.796019900497512, 0.746268656716418, 0. 681592039800995, 0.6318407960199,
0.592039800995025, 0.552238805970149, 0. 527363184079602, 0.492537313432836,
NA, 0.402097902097902, 0. 340909090909091, 0.236013986013986,
0.131118881118881, 0.236013986013986, 0. 0262237762237762, -0.0174825174825175,<
-0.0699300699300699, 0。 13986013986014, 0. 106643356643357, 0.0769230769230769,
0.0629370629370629, 0。 048951048951049, NA, 0.476495726495726, 0.
0.391025641025641, 0.252136752136752, 0. 273504273504273, 0.412393162393162,
0.391025641025641,/span> 0.358974358974359,/span> 0. 273504273504273, 0.145299145299145,
0.123931623931624, 0.0737179487179487, 0. 0416666666666667, 0.111111111111111,
NA, 0.777385159010601, 0. 600706713780919, 0.353356890459364,
0.49469964664311, 0.459363957597173, 0. 653710247349823, 0.618374558303887,
0.547703180212014, 0.512367491166078, 0. 484098939929329, 0.45583038869258,
0.431095406360424, 0。 696113074204947, NA, 1. 06481481481481, 0.925925925925926,
0.6944444444445, 1.01851851851852, 0. 694444444444445, 0.648148148148148,
0.601851851852, 0.56944444445, 0. 541666666666667, 0.523148148148148,
0.50462962963, 0.490740740741, 0. 851851851852, NA, 0.574712643678161,
0.498084291187739, 0.383141762452107, 0. 651340996168582, 0.53639846743295,
0.762452107279693, 0.67816091954023, 0. 448275862068965, 0.409961685823755,
0.333333333, 0.283524904214559, 0. 245210727969349, 0.532567049808429,
1.0416666667, 0.925925925926, 0. 740740740740741, 0.717592592592593,
0.625, 0.671296296296, 0。 625, 0. 578703703703704, 0.532407407407407,
0.643518518518, 0.578703703704, 0. 518518518518518, 0.851851851851852,
NA, 0.775193798449612, 0. 682170542635659, 0.578811369509044,
0.527131782945736, 1.25064599483204, 1. 19896640826873, 0.96640826873385,
0.837209302325581, 0.75968992248062, 0. 689922480620155, 0.674418604651163,
0.664082687338501, 0.86046511627907, 0. 783132530120482, 0.642570281124498,
0.582329317269076, 0.522088353413655, 0. 642570281124498, 0.522088353413655,
0.421686746987952, 0.281124497991968, 0. 200803212851406, 0.180722891566265,
0.112449799196787,/span> 0.0562248995983936,/span> 0. 305220883534137, 1.89473684210526,
1.78947368421053, 1.73684210526316, 1. 47368421052632, 1.47368421052632,
1.36842105263158, 1.26315789473684, 1. 21052631578947, 1.10526315789474,
1. 10526315789474, NA, NA。 NA, NA。 NA, NA。 NA, NA, 2。 25, 2, 2, 2,
2, 1.53153153, 1。 35135135135135, 1. 21621621622, 1.08108108108, 1.
0.990990990991, 0.986486486486, 0. 981981981981982, 0.711711711711712,
0.621621621622, 0.576576576577, 0. 576576576576577, 0.576576576576577,
1. 02702702702703, NA, NA。 NA, NA, NA。 NA, NA, NA。 NA, NA。
NA, NA, 0。 129740518962076, 0. 0449101796407186, -0.0998003992015968,<
-0.229540918163673,/span> -0. 384231536926148, -0. 484031936127745, -0.62874251497006,-0.738522954091816,/span> -0. 828343313373254, -0. 838323353293413, -0.839321357285429,<
-0.839820359281437,/span> -0. 800399201596807, NA。 NA, NA。 NA, NA。
NA, NA。 NA, NA。 NA, NA。 NA)),行。 names = c(NA。 -355L)。 class = c("data. table",
"data.frame"))
p < - ggplot(dt, aes(x, y, 填充=顏色)) geom_tile()
p
g <- ggplotly(p)
g
uj5u.com熱心網友回復:
問題是,你有相同的坐標重復了不止一次,但Color變數的值不同。事實上,如果你檢查一下x和y有多少個唯一的組合,只有346個,而不是你data.table中的355行。
nrow(unique(dt[, 。 (x。 y)]))。
# [1] 346
如果你嘗試改變你的例子中的這一行:
p < - ggplot(dt, aes(x, y, 填充=顏色)) geom_tile()
to
p < - ggplot(unique(dt, 通過= c('x'/span>。 'y'))。 aes(x, y。 填充=顏色)) geom_tile()
你將在ggplot2和plotly中得到相同的繪圖。
最好!
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/318891.html
標籤:
上一篇:如何使用Sequelize向belongsToMany關聯添加額外的列
下一篇:使用ggplot繪制散點圖



