Сортировать ось X в столбце - PullRequest
2 голосов
/ 18 февраля 2009

У меня есть данные в двоичном виде, которые выглядят так:

  (8.048,18.05] (-21.95,-11.95] (-31.95,-21.95]   (18.05,28.05] (-41.95,-31.95]
             81              76              18              18             12
    (-132,-122]     (-122,-112]     (-112,-102]     (-162,-152]  (-102,-91.95]
              6               6               6               5              5
(-91.95,-81.95]     (-192,-182]   (28.05,38.05]   (38.05,48.05]  (58.05,68.05]
              5               4               4               4              4
  (78.05,88.05]     (98.05,108]     (-562,-552]     (-512,-502]    (-482,-472]
              4               4               3               3              3
    (-452,-442]     (-412,-402]     (-282,-272]     (-152,-142]  (48.05,58.05]
              3               3               3               3              3
  (68.05,78.05]       (118,128]       (128,138]     (-582,-572]    (-552,-542]
              3               3               3               2              2
    (-532,-522]     (-422,-412]     (-392,-382]     (-362,-352]    (-262,-252]
              2               2               2               2              2
    (-252,-242]     (-142,-132] (-81.95,-71.95]       (148,158]  (-1402,-1392]
              2               2               2               2              1
  (-1372,-1362]   (-1342,-1332]     (-942,-932]     (-862,-852]    (-822,-812]
              1               1               1               1              1
    (-712,-702]     (-682,-672]     (-672,-662]     (-632,-622]    (-542,-532]
              1               1               1               1              1
    (-502,-492]     (-492,-482]     (-472,-462]     (-462,-452]    (-442,-432]
              1               1               1               1              1
    (-432,-422]     (-352,-342]     (-332,-322]     (-312,-302]    (-302,-292]
              1               1               1               1              1
    (-202,-192]     (-182,-172]     (-172,-162] (-51.95,-41.95]  (88.05,98.05]
              1               1               1               1              1
      (108,118]       (158,168]       (168,178]       (178,188]      (298,308]
              1               1               1               1              1
      (318,328]       (328,338]       (338,348]       (368,378]      (458,468]
              1               1               1               1              1

Как я могу построить эти данные так, чтобы корзина сортировалась от самого отрицательного слева до самого положительного справа? В настоящее время мой график выглядит как . Обратите внимание, что он не отсортирован вообще. В частности, второй столбец (value = 76) расположен справа от первого:

 (8.048,18.05] (-21.95,-11.95]
            81              76

Это команда, которую я использую для построения графика:

barplot(x,ylab="Number of Unique Tags", xlab="Expected - Observed")

1 Ответ

5 голосов
/ 21 февраля 2009

Я действительно хочу помочь ответить на ваш вопрос, но я должен сказать вам, я не могу разобраться в ваших данных. Я вижу много открывающих скобок, но не закрывающих. Данные выглядят отсортированными по убыванию по значениям внизу каждой строки. Я понятия не имею, что делать из значения типа "(8.048,18.05]"

Я что-то упускаю из виду? Можете ли вы привести более простой пример, когда ваша структура данных не имеет значения?

Я бы, как правило, ожидал фрейм данных или матрицу с двумя столбцами, один для X и один для Y.

Посмотрите, поможет ли этот пример сортировки (я вроде как стреляю в темноте)

tN <- table(Ni <- rpois(100, lambda=5))
r <- barplot(tN)

#stop here and examine the plot
#the next bit converts the matrix to a data frame,
#  sorts it, and plots it again

df<-data.frame(tN)
df2<-df[order(df$Freq),]
barplot(df2$Freq)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...