按 y 轴降序排列

问题描述 投票:0回答:1

我在 R 中有一个算盘图,其 y 轴从底部按降序排列。我需要它从顶部下降。 abacus_plot() 使用基本plot() 变量。看起来很简单,但我却一无所获。我的代码:

library(glatos)
abacus_plot(detections_w_events,
            location_col= 'deploy_lat', ylab = 'Latitude',
            main='Detections by Station', x_res = "12 weeks", x_format = "%b-%y",
            col = detections_w_events$color)

目前剧情:

enter image description here

r plot yaxis glatos
1个回答
1
投票

glatos::abacus_plot 将 y 轴值视为文本,默认情况下,它沿着 y 轴从下到上以相反的字母顺序对级别进行排序。虽然像纬度这样的数值似乎违反直觉,但您只需要指定唯一的 y 轴级别(包括从下到上打印的顺序)并通过

locations
参数将它们传递给 abacus_plot 。这在 ?abacus_plot 中有进一步解释。

因此,要回答您的问题,请尝试:

# make vector of y-levels to display (with desired order, bottom-to-top along y)
my_locs <- sort(unique(detections_w_events$deploy_lat))

abacus_plot(detections_w_events,
            location_col= 'deploy_lat', 
            locations = my_locs,
            ylab = 'Latitude',
            main='Detections by Station', x_res = "12 weeks", x_format = "%b-%y",
            col = detections_w_events$color)
© www.soinside.com 2019 - 2024. All rights reserved.