Skip to contents

Align shape to x-axis based on specific geometric features.

Usage

coo_align_calliper(x, ..., .cols = NULL, .ldk_col = NULL)

coo_align_minradius(x, ..., .cols = NULL, .ldk_col = NULL)

Arguments

x

A matrix (nx2), list of matrices, or tibble with coo columns.

...

Additional arguments (reserved for future use).

.cols

Column name(s) to process when x is a tibble. If NULL, automatically detects columns containing coo columns.

Value

  • If x is a single matrix: returns the aligned matrix

  • If x is a list: returns a list of aligned matrices

  • If x is a tibble: returns the tibble with aligned coo column(s)

Details

coo_align_calliper(): Aligns the calliper (maximum distance between points) horizontally along the x-axis.

coo_align_minradius(): Aligns the point with minimum distance to centroid (min radius) to the x-axis.

See also

coo_align() for principal axis alignment; get_calliper() for calliper measurement

Examples

# Align calliper to x-axis
coo_align_calliper(shapes$cat)
#> <xy [120 x 2]>
#>       [,1]     [,2]    
#>  [1,]  117.577 -173.261
#>  [2,]  110.672 -171.183
#>  [3,]  111.838 -175.010
#>  [4,]  111.672 -181.332
#>  [5,]  106.807 -185.950
#>  [6,] ...      ...     
#>  [7,]  106.850 -196.390
#>  [8,]  107.015 -190.068
#>  [9,]  111.299 -183.536
#> [10,]  115.873 -177.962
#> [11,]  121.030 -174.301

# Align min radius to x-axis
coo_align_minradius(bot$coo)
#> $brahma
#> <xy [138 x 2]>
#>       [,1]    [,2]   
#>  [1,] -59.715 559.039
#>  [2,] -53.160 538.864
#>  [3,] -51.274 528.026
#>  [4,] -44.719 507.852
#>  [5,] -38.163 487.677
#>  [6,] ...     ...    
#>  [7,] -78.956 652.118
#>  [8,] -78.055 641.109
#>  [9,] -74.456 620.420
#> [10,] -69.870 599.903
#> [11,] -67.171 590.222
#> 
#> $caney
#> <xy [168 x 2]>
#>       [,1]    [,2]   
#>  [1,]  32.988 536.606
#>  [2,]  33.361 526.613
#>  [3,]  35.107 506.664
#>  [4,]  34.481 496.634
#>  [5,]  35.854 486.678
#>  [6,] ...     ...    
#>  [7,]  52.948 618.408
#>  [8,]  44.701 598.086
#>  [9,]  40.115 586.907
#> [10,]  37.490 576.802
#> [11,]  34.240 556.667
#> 
#> $chimay
#> <xy [189 x 2]>
#>       [,1]    [,2]   
#>  [1,]  55.225 332.024
#>  [2,]  55.076 324.026
#>  [3,]  54.945 317.027
#>  [4,]  55.795 309.010
#>  [5,]  55.645 301.011
#>  [6,] ...     ...    
#>  [7,]  66.085 377.829
#>  [8,]  60.936 369.924
#>  [9,]  57.805 362.981
#> [10,]  55.656 355.020
#> [11,]  54.506 347.040
#> 
#> $corona
#> <xy [129 x 2]>
#>       [,1]    [,2]   
#>  [1,] 103.909 423.036
#>  [2,] 103.605 413.041
#>  [3,] 101.967 392.081
#>  [4,] 102.663 382.055
#>  [5,] 102.328 371.060
#>  [6,] ...     ...    
#>  [7,] 133.329 502.179
#>  [8,] 124.725 482.431
#>  [9,] 119.453 473.587
#> [10,] 115.121 462.714
#> [11,] 107.546 443.936
#> 
#> $deusventrue
#> <xy [152 x 2]>
#>       [,1]     [,2]    
#>  [1,]   82.863 -479.553
#>  [2,]   83.792 -469.748
#>  [3,]   85.650 -450.138
#>  [4,]   85.631 -440.651
#>  [5,]   85.905 -419.463
#>  [6,] ...      ...     
#>  [7,]   81.755 -557.979
#>  [8,]   81.418 -547.545
#>  [9,]   82.328 -528.253
#> [10,]   82.309 -518.766
#> [11,]   81.323 -500.111
#> 
#> $duvel
#> <xy [161 x 2]>
#>       [,1]     [,2]    
#>  [1,]  -74.564 -312.068
#>  [2,]  -74.088 -301.078
#>  [3,]  -73.613 -290.088
#>  [4,]  -73.613 -290.088
#>  [5,]  -73.137 -279.099
#>  [6,] ...      ...     
#>  [7,]  -89.887 -365.455
#>  [8,]  -84.416 -354.681
#>  [9,]  -79.987 -344.864
#> [10,]  -79.987 -344.864
#> [11,]  -77.513 -333.961
#> 
#> $franziskaner
#> <xy [124 x 2]>
#>       [,1]    [,2]   
#>  [1,]  36.344 440.813
#>  [2,]  37.187 419.830
#>  [3,]  37.588 409.838
#>  [4,]  38.350 390.853
#>  [5,]  38.752 380.861
#>  [6,] ...     ...    
#>  [7,]  38.609 533.979
#>  [8,]  38.452 512.956
#>  [9,]  36.855 502.883
#> [10,]  34.700 481.780
#> [11,]  35.101 471.788
#> 
#> $grimbergen
#> <xy [126 x 2]>
#>       [,1]    [,2]   
#>  [1,]  90.926 395.869
#>  [2,]  87.722 386.188
#>  [3,]  85.163 365.344
#>  [4,]  83.822 354.426
#>  [5,]  82.603 344.501
#>  [6,] ...     ...    
#>  [7,] 132.803 474.350
#>  [8,] 116.470 456.206
#>  [9,] 109.174 446.019
#> [10,] 103.985 436.581
#> [11,]  95.471 416.469
#> 
#> $guiness
#> <xy [183 x 2]>
#>       [,1]    [,2]   
#>  [1,]  75.629 383.753
#>  [2,]  75.491 375.754
#>  [3,]  75.353 367.755
#>  [4,]  75.198 358.757
#>  [5,]  74.922 342.759
#>  [6,] ...     ...    
#>  [7,]  80.611 440.675
#>  [8,]  78.456 431.711
#>  [9,]  74.198 416.783
#> [10,]  75.060 408.766
#> [11,]  75.905 399.751
#> 
#> $hoegardeen
#> <xy [193 x 2]>
#>       [,1]    [,2]   
#>  [1,] 145.213 525.940
#>  [2,] 140.765 513.562
#>  [3,] 138.471 501.784
#>  [4,] 135.986 489.023
#>  [5,] 133.501 476.263
#>  [6,] ...     ...    
#>  [7,] 175.254 596.499
#>  [8,] 168.843 584.503
#>  [9,] 163.604 573.298
#> [10,] 157.193 561.302
#> [11,] 153.727 548.733
#> 
#> $jupiler
#> <xy [156 x 2]>
#>       [,1]    [,2]   
#>  [1,] 141.524 498.218
#>  [2,] 138.165 484.590
#>  [3,] 135.961 471.778
#>  [4,] 133.587 457.981
#>  [5,] 131.213 444.184
#>  [6,] ...     ...    
#>  [7,] 174.152 575.809
#>  [8,] 166.851 562.859
#>  [9,] 161.690 550.556
#> [10,] 155.374 537.437
#> [11,] 150.044 524.149
#> 
#> $kingfisher
#> <xy [182 x 2]>
#>       [,1]     [,2]    
#>  [1,]  -71.952 -383.823
#>  [2,]  -71.927 -373.823
#>  [3,]  -71.905 -364.823
#>  [4,]  -71.880 -354.823
#>  [5,]  -71.855 -344.823
#>  [6,] ...      ...     
#>  [7,]  -82.096 -441.798
#>  [8,]  -79.074 -432.805
#>  [9,]  -77.049 -422.810
#> [10,]  -74.024 -412.818
#> [11,]  -73.999 -402.818
#> 
#> $latrappe
#> <xy [136 x 2]>
#>       [,1]    [,2]   
#>  [1,]  15.580 389.556
#>  [2,]  14.902 377.534
#>  [3,]  15.250 364.539
#>  [4,]  15.571 352.543
#>  [5,]  15.919 339.548
#>  [6,] ...     ...    
#>  [7,]  15.573 464.583
#>  [8,]  12.922 451.508
#>  [9,]  14.242 439.539
#> [10,]  14.590 426.543
#> [11,]  14.911 414.548
#> 
#> $lindemanskriek
#> <xy [176 x 2]>
#>       [,1]    [,2]   
#>  [1,] 147.899 405.037
#>  [2,] 146.228 397.213
#>  [3,] 138.204 383.589
#>  [4,] 135.345 374.997
#>  [5,] 133.673 367.174
#>  [6,] ...     ...    
#>  [7,] 176.852 459.182
#>  [8,] 173.225 451.777
#>  [9,] 168.410 443.602
#> [10,] 164.783 436.197
#> [11,] 156.341 420.617
#> 
#> $nicechouffe
#> <xy [146 x 2]>
#>       [,1]    [,2]   
#>  [1,] 159.160 334.235
#>  [2,] 156.430 326.649
#>  [3,] 148.800 310.940
#>  [4,] 146.826 302.159
#>  [5,] 144.096 294.573
#>  [6,] ...     ...    
#>  [7,] 185.317 386.779
#>  [8,] 180.636 379.631
#>  [9,] 176.711 371.289
#> [10,] 173.225 364.897
#> [11,] 165.814 350.164
#> 
#> $pecheresse
#> <xy [129 x 2]>
#>       [,1]    [,2]   
#>  [1,] 150.068 475.892
#>  [2,] 144.719 457.551
#>  [3,] 143.118 448.695
#>  [4,] 138.575 429.192
#>  [5,] 133.227 410.851
#>  [6,] ...     ...    
#>  [7,] 187.825 555.444
#>  [8,] 183.093 546.137
#>  [9,] 174.970 529.314
#> [10,] 166.669 511.507
#> [11,] 163.100 503.006
#> 
#> $sierranevada
#> <xy [176 x 2]>
#>       [,1]    [,2]   
#>  [1,]  46.007 347.317
#>  [2,]  46.526 335.329
#>  [3,]  46.526 335.329
#>  [4,]  47.089 322.341
#>  [5,]  47.609 310.352
#>  [6,] ...     ...    
#>  [7,]  45.321 409.346
#>  [8,]  43.886 396.271
#>  [9,]  42.407 384.196
#> [10,]  44.925 372.294
#> [11,]  44.925 372.294
#> 
#> $tanglefoot
#> <xy [174 x 2]>
#>       [,1]    [,2]   
#>  [1,]  44.512 367.439
#>  [2,]  44.588 359.440
#>  [3,]  44.664 351.440
#>  [4,]  44.816 335.441
#>  [5,]  45.891 327.451
#>  [6,] ...     ...    
#>  [7,]  47.979 423.475
#>  [8,]  45.056 415.447
#>  [9,]  44.132 407.438
#> [10,]  43.284 391.429
#> [11,]  43.360 383.429
#> 
#> $tauro
#> <xy [174 x 2]>
#>       [,1]    [,2]   
#>  [1,]  91.878 509.823
#>  [2,]  89.044 497.992
#>  [3,]  88.205 486.022
#>  [4,]  87.296 473.053
#>  [5,]  86.456 461.083
#>  [6,] ...     ...    
#>  [7,] 111.877 580.598
#>  [8,] 108.045 568.837
#>  [9,] 102.218 557.216
#> [10,]  99.383 545.385
#> [11,]  96.479 532.557
#> 
#> $westmalle
#> <xy [141 x 2]>
#>       [,1]    [,2]   
#>  [1,] 129.598 378.603
#>  [2,] 128.371 370.698
#>  [3,] 122.799 354.359
#>  [4,] 121.572 346.454
#>  [5,] 117.977 329.808
#>  [6,] ...     ...    
#>  [7,] 155.684 442.357
#>  [8,] 151.339 433.923
#>  [9,] 145.921 418.573
#> [10,] 140.588 410.293
#> [11,] 136.157 394.789
#> 
#> $amrut
#> <xy [191 x 2]>
#>       [,1]    [,2]   
#>  [1,]  67.180 439.564
#>  [2,]  66.949 429.567
#>  [3,]  66.718 419.570
#>  [4,]  66.487 409.572
#>  [5,]  66.255 399.575
#>  [6,] ...     ...    
#>  [7,]  66.568 499.595
#>  [8,]  68.336 489.551
#>  [9,]  68.105 479.554
#> [10,]  67.874 469.556
#> [11,]  67.643 459.559
#> 
#> $ballantines
#> <xy [146 x 2]>
#>       [,1]    [,2]   
#>  [1,]  52.525 355.154
#>  [2,]  51.873 339.167
#>  [3,]  51.547 331.174
#>  [4,]  50.935 316.186
#>  [5,]  50.609 308.193
#>  [6,] ...     ...    
#>  [7,]  55.420 426.095
#>  [8,]  54.768 410.108
#>  [9,]  54.442 402.115
#> [10,]  53.789 386.128
#> [11,]  53.504 379.134
#> 
#> $bushmills
#> <xy [165 x 2]>
#>       [,1]    [,2]   
#>  [1,]  61.902 457.480
#>  [2,]  62.234 442.484
#>  [3,]  62.587 426.488
#>  [4,]  62.587 426.488
#>  [5,]  62.919 411.491
#>  [6,] ...     ...    
#>  [7,]  58.200 534.417
#>  [8,]  58.532 519.421
#>  [9,]  58.886 503.425
#> [10,]  58.886 503.425
#> [11,]  59.217 488.428
#> 
#> $chivas
#> <xy [164 x 2]>
#>       [,1]    [,2]   
#>  [1,] 366.907 239.661
#>  [2,] 359.341 236.382
#>  [3,] 344.632 227.627
#>  [4,] 338.282 222.760
#>  [5,] 325.584 213.026
#>  [6,] ...     ...    
#>  [7,] 447.696 241.109
#>  [8,] 437.273 243.199
#>  [9,] 414.047 245.556
#> [10,] 404.048 245.451
#> [11,] 383.864 243.839
#> 
#> $dalmore
#> <xy [155 x 2]>
#>       [,1]     [,2]    
#>  [1,]  231.439 -294.586
#>  [2,]  226.253 -282.665
#>  [3,]  218.959 -271.494
#>  [4,]  211.694 -261.736
#>  [5,]  203.042 -253.420
#>  [6,] ...      ...     
#>  [7,]  239.326 -371.520
#>  [8,]  239.326 -371.520
#>  [9,]  240.405 -354.524
#> [10,]  240.790 -338.250
#> [11,]  239.068 -322.725
#> 
#> $famousgrouse
#> <xy [169 x 2]>
#>       [,1]     [,2]    
#>  [1,]  -83.088 -317.595
#>  [2,]  -83.592 -307.608
#>  [3,]  -84.046 -298.619
#>  [4,]  -84.550 -288.632
#>  [5,]  -84.550 -288.632
#>  [6,] ...      ...     
#>  [7,]  -78.669 -365.433
#>  [8,]  -79.174 -355.446
#>  [9,]  -79.174 -355.446
#> [10,]  -79.627 -346.457
#> [11,]  -80.132 -336.470
#> 
#> $glendronach
#> <xy [197 x 2]>
#>       [,1]    [,2]   
#>  [1,]  48.970 438.356
#>  [2,]  49.630 426.374
#>  [3,]  51.289 414.447
#>  [4,]  51.289 414.447
#>  [5,]  51.948 402.465
#>  [6,] ...     ...    
#>  [7,]  44.673 498.210
#>  [8,]  45.333 486.228
#>  [9,]  46.991 474.301
#> [10,]  46.991 474.301
#> [11,]  47.651 462.320
#> 
#> $glenmorangie
#> <xy [179 x 2]>
#>       [,1]    [,2]   
#>  [1,]  40.382 519.136
#>  [2,]  41.795 502.165
#>  [3,]  41.795 502.165
#>  [4,]  42.185 486.170
#>  [5,]  43.598 469.200
#>  [6,] ...     ...    
#>  [7,]  47.409 600.331
#>  [8,]  43.775 585.238
#>  [9,]  40.190 568.146
#> [10,]  39.603 551.127
#> [11,]  39.603 551.127
#> 
#> $highlandpark
#> <xy [169 x 2]>
#>       [,1]    [,2]   
#>  [1,]  43.120 370.872
#>  [2,]  43.077 356.872
#>  [3,]  43.077 356.872
#>  [4,]  43.035 342.872
#>  [5,]  42.993 328.872
#>  [6,] ...     ...    
#>  [7,]  42.331 440.874
#>  [8,]  43.289 426.871
#>  [9,]  43.246 412.871
#> [10,]  43.204 398.871
#> [11,]  43.204 398.871
#> 
#> $jackdaniels
#> <xy [150 x 2]>
#>       [,1]    [,2]   
#>  [1,]  67.343 413.316
#>  [2,]  67.206 400.317
#>  [3,]  67.070 387.317
#>  [4,]  66.933 374.318
#>  [5,]  66.797 361.319
#>  [6,] ...     ...    
#>  [7,]  75.172 492.238
#>  [8,]  73.025 478.260
#>  [9,]  69.888 465.292
#> [10,]  68.752 452.303
#> [11,]  69.615 439.293
#> 
#> $jb
#> <xy [174 x 2]>
#>       [,1]    [,2]   
#>  [1,]   5.446 532.710
#>  [2,]   6.222 521.738
#>  [3,]   5.930 511.692
#>  [4,]   7.481 489.747
#>  [5,]   9.254 478.845
#>  [6,] ...     ...    
#>  [7,]  -0.840 607.453
#>  [8,]  -2.060 596.339
#>  [9,]   0.641 586.505
#> [10,]   3.190 564.631
#> [11,]   3.965 553.658
#> 
#> $johnniewalker
#> <xy [168 x 2]>
#>       [,1]     [,2]    
#>  [1,] -126.874 -179.491
#>  [2,] -127.012 -175.493
#>  [3,] -127.151 -171.496
#>  [4,] -127.289 -167.498
#>  [5,] -128.565 -159.537
#>  [6,] ...      ...     
#>  [7,] -125.907 -207.474
#>  [8,] -126.045 -203.476
#>  [9,] -126.321 -195.481
#> [10,] -126.460 -191.484
#> [11,] -126.598 -187.486
#> 
#> $magallan
#> <xy [141 x 2]>
#>       [,1]    [,2]   
#>  [1,]  27.831 403.632
#>  [2,]  29.704 388.749
#>  [3,]  32.562 382.053
#>  [4,]  34.309 368.163
#>  [5,]  37.174 353.405
#>  [6,] ...     ...    
#>  [7,]  16.740 467.749
#>  [8,]  17.614 460.803
#>  [9,]  19.362 446.913
#> [10,]  23.219 432.280
#> [11,]  24.093 425.335
#> 
#> $makersmark
#> <xy [177 x 2]>
#>       [,1]    [,2]   
#>  [1,] 265.177 342.441
#>  [2,] 251.868 336.885
#>  [3,] 239.392 330.774
#>  [4,] 239.392 330.774
#>  [5,] 229.137 320.782
#>  [6,] ...     ...    
#>  [7,] 335.610 361.629
#>  [8,] 323.691 352.745
#>  [9,] 312.877 349.132
#> [10,] 312.877 349.132
#> [11,] 295.681 348.565
#> 
#> $oban
#> <xy [179 x 2]>
#>       [,1]    [,2]   
#>  [1,]  80.057 455.978
#>  [2,]  79.937 446.979
#>  [3,]  79.712 429.980
#>  [4,]  79.606 421.981
#>  [5,]  79.486 412.982
#>  [6,] ...     ...    
#>  [7,]  78.853 515.999
#>  [8,]  79.733 506.987
#>  [9,]  79.627 498.987
#> [10,]  79.508 489.988
#> [11,]  79.282 472.990
#> 
#> $oldpotrero
#> <xy [131 x 2]>
#>       [,1]    [,2]   
#>  [1,] 244.003 203.962
#>  [2,] 234.501 200.846
#>  [3,] 224.999 197.731
#>  [4,] 208.698 188.388
#>  [5,] 201.080 182.734
#>  [6,] ...     ...    
#>  [7,] 307.324 231.666
#>  [8,] 301.099 226.258
#>  [9,] 291.842 221.750
#> [10,] 273.657 214.946
#> [11,] 263.581 211.011
#> 
#> $redbreast
#> <xy [177 x 2]>
#>       [,1]    [,2]   
#>  [1,] 245.963  69.399
#>  [2,] 240.848  67.716
#>  [3,] 236.498  66.676
#>  [4,] 226.910  62.544
#>  [5,] 223.847  59.972
#>  [6,] ...     ...    
#>  [7,] 287.983  62.895
#>  [8,] 281.705  64.152
#>  [9,] 275.426  65.410
#> [10,] 264.278  67.802
#> [11,] 258.000  69.059
#> 
#> $tamdhu
#> <xy [176 x 2]>
#>       [,1]     [,2]    
#>  [1,]  -64.731 -550.377
#>  [2,]  -64.389 -538.382
#>  [3,]  -64.018 -525.387
#>  [4,]  -63.676 -513.392
#>  [5,]  -63.333 -501.397
#>  [6,] ...      ...     
#>  [7,]  -63.816 -623.433
#>  [8,]  -61.474 -611.495
#>  [9,]  -62.131 -599.471
#> [10,]  -62.788 -587.448
#> [11,]  -63.446 -575.424
#> 
#> $wildturkey
#> <xy [185 x 2]>
#>       [,1]    [,2]   
#>  [1,]  16.154 569.055
#>  [2,]  16.199 555.055
#>  [3,]  16.245 541.056
#>  [4,]  16.290 527.056
#>  [5,]  16.336 513.056
#>  [6,] ...     ...    
#>  [7,]  17.888 651.061
#>  [8,]  15.930 638.055
#>  [9,]  12.972 625.045
#> [10,]  13.018 611.045
#> [11,]  13.063 597.046
#> 
#> $yoichi
#> <xy [123 x 2]>
#>       [,1]    [,2]   
#>  [1,]  51.068 386.793
#>  [2,]  51.766 371.809
#>  [3,]  52.417 357.825
#>  [4,]  53.115 342.841
#>  [5,]  53.812 327.857
#>  [6,] ...     ...    
#>  [7,]  46.675 459.668
#>  [8,]  47.000 452.675
#>  [9,]  47.698 437.692
#> [10,]  48.349 423.707
#> [11,]  50.045 408.769
#> 
#> attr(,"class")
#> [1] "out"  "coo"  "list"