У меня есть данные в следующем формате. Столбец V1 представляет интересующее геномное местоположение, а столбцы V4 и V5 - частоты минорных аллелей в два разных момента времени. Я хотел бы сделать простой график рассеяния xy с линией, соединяющей частоту аллеля для каждого конкретного места от момента времени 1 до момента времени 2 (нанесенный на ось y). (Обратите внимание, что на самом деле у меня есть от сотен до тысяч точек данных).
V1 V2 V3 V4 V5
1 153 1/113 1/115 0.008849558 0.008695652
2 390 0/176 150/152 0.000000000 0.986842105
3 445 1/149 1/152 0.006711409 0.006578947
4 507 0/154 144/146 0.000000000 0.986301370
5 619 1/103 99/101 0.009708738 0.980198020
6 649 0/138 120/123 0.000000000 0.975609756
Я чувствую, что смогу сделать это с помощью ggplot, но я не уверен, как это сделать, поскольку я не знаю, как указать два значения y для каждой позиции генома или указать столбец в качестве категории . Я подозреваю, что данные нужно как-то изменить. Любая помощь или предложения приветствуются!
Обновлять:
Спасибо всем, кто дал мне предложения. Не думаю, что я очень четко понимал, что хочу, чтобы временные точки были моей осью абсцисс, а не геномной позицией - мои извинения. Надеюсь, эта фотография проясняет это!
Я успешно сгенерировал сюжет, который хотел создать, с помощью следующего кода:
ggplot (dat) + geom_segment (aes (x = "timepoint 1", y = V4, xend = "timepoint2", yend = V5))
и вот как выглядит график с большим количеством точек данных ...
Я еще не менял названия осей и не играл с полями, но это общая идея!