Итак, у меня есть набор данных, которые я выбрал в качестве примера ниже:
Sequence Abundance Length
CAGTG 3 25
CGCTG 82 23
GGGAC 4 25
CTATC 16 23
CTTGA 14 25
CAAGG 9 24
GTAAT 5 24
ACGAA 32 22
TCGGA 10 22
TAGGC 30 21
TGCCG 25 21
TCCGG 2 21
CGCCT 22 24
TTGGC 4 22
ATTCC 4 23
Здесь я показываю только первые 4 слова каждой последовательности, но на самом деле они длинные. Я смотрю на обилие последовательностей для каждого класса размера, который у меня есть. Кроме того, я хочу визуализировать долю численности, которую представляет конкретная последовательность в своем классе размеров. В настоящее время я могу сделать столбчатую диаграмму в виде столбца:
ggplot(tab, aes(x=Length, y=Abundance, fill=Sequence))
+ geom_bar(stat='identity')
+ opts(legend.position="none")
![ggplot stacked bar graph of the sample data](https://i.imgur.com/96dMA.png)
Это хорошо для небольшого набора данных, такого как этот, но у меня есть около 1,7 миллиона строк в моем реальном наборе данных. Это выглядит очень красочно, и я вижу, что определенные последовательности содержат большинство в одном классе размеров, но это очень грязно.
Я бы хотел иметь возможность упорядочивать цветные столбики для каждого размера в соответствии с обилием этой последовательности. то есть столбцы с наибольшим содержанием в их стопке находятся внизу каждой стопки, а столбцы с наименьшим содержанием в верхней части. Это должно выглядеть намного более презентабельно.
Есть идеи, как это сделать в ggplot2? Я знаю, что в aes () есть параметр "порядок", но я не могу понять, что он должен делать с данными в моем формате.