Российский химико-аналитический портал | химический анализ и аналитическая химия в фокусе внимания ::: портал химиков-аналитиков ::: выбор профессионалов |
|
ANCHEM.RU » Форумы » 1. Аналитический форум ... |
построение 3D поверхностей по данным ГХ-МС >>>
|
Автор | Тема: построение 3D поверхностей по данным ГХ-МС | |||||
trix Пользователь Ранг: 4 |
17.01.2019 // 10:33:19
Здравствуйте, есть задача - построить (визуализировать) поверхность по данным ГХ-МС. По одной оси - время, по другой - m/z, по третьей - интенсивности m/z. В принципе, это можно реализовать, например, в Excel, но там есть ограничения на количество переменных (до 255), еще можно в Statistica, но там такой график просто виснет из-за большого числа точек (в моем случае около 9 000 000). Данные были получены в GSMSSolution, но там я подобной функции не нашел. В идеальном варианте, хотелось бы получить на выходе .jpg или аналогичный ему файл с картой на плоскости, в которой изменения интенсивности m/z (третье измерение) были представлены в виде цветной поверхности (например, при изменении интенсивности отклика по m/z цвет менялся бы от зеленого до красного). Из исходных данных есть файл с результатами анализа ГХ-МС (время, m/z, интенсивности по этим массам), перекинутый в .xml, можно и в текстовый файл данные закинуть. Есть ли у кого-нибудь опыт, с помощью каких программ это можно сделать? Заранее благодарен. |
|||||
ANCHEM.RU Администрация Ранг: 246 |
||||||
vmu Пользователь Ранг: 1330 |
17.01.2019 // 13:17:51
Редактировано 2 раз(а) Еще можно попробовать Origin или SigmaPlot, но там большое число точек тоже может создать проблему. Можно попробовать уменьшить число точек, уменьшив разрешение (точнее частоту дискретизации), например, по m/z, скажем с десятых долей m/z до целых m/z (т.е., например, сигналы от m/z от 105.5 до 106.4 суммировать и выдавать как сигнал от m/z 106; число точек уменьшится в 10 раз). Но вообще такая картинка (контурная карта в координатах (t, m/z, сигнал)) для дискретных масс-спектральных данных будет ненаглядной в отличие от аналогичных карт с непрерывными и плавно меняющимися данными в ВЭЖХ-СФ (t, длина волны, сигнал) или в двумерной хроматографии (t1, t2, сигнал). Upd: немного улучшить наглядность и облегчить проблему большого количества данных можно, если строить карту кусками или только для отдельных узких, наиболее интересных временных отрезков хроматограммы. |
|||||
SergeyK Пользователь Ранг: 2168 |
17.01.2019 // 14:30:55
Редактировано 2 раз(а) Используйте R, PyPlot: |
|||||
bf109xxl Пользователь Ранг: 1727 |
18.01.2019 // 1:06:12
Тут все правильно понаписали, слегка дополню. Все будет определяться с одной стороны толщиной кошелька или возможностью пользоваться нелегальным софтом, а с другой - желанием осваивать скриптовые языки, т.к. в бесплатном софте чаще всего придется графику программировать на таком языке - это не бог весть как сложно, но многие боятся подобного программирования, как черт ладана. Прекрасный вариант - Matlab (есть тормознутый фришный аналог Octave) или Mathematica (потребует привыкания), но оба продукта, мягко говоря, оооочень недешевы. Недешев и Origin, в нем, кстати, реализована также нелинейная аппроксимация 3d-поверхностей. Да и SigmaPlot тоже стоит денег. R и Python - очень мощные средства. Я, к сожалению, из этих двух языков (вычислительных сред?) хорошо владею только R, поэтому могу оценить только его возможности. Могу также сравнить с Origin - я регулярно программирую разные задачи и в нем тоже. Выложите в заархивированном виде какой-нибудь тестовый датасет в ASCII - желательно передающий запросы по разрешению в каждом измерении, я по-быстрому построю поверхности в разных пакетах (Origin, R, Matlab, остальные лень вспоминать), кто-то, возможно, пособит с Python или Mathematica, а может, и какой-то другой интересный вариант предложит. Матрица 3000x3000 будет достаточно "тяжела" для любого пакета, но Matlab может оказаться оптимальнее (это из опыта, довольно субъективно, не буду сильно спорить), в Origin матричные операции, ИМХО, тормознутые, да и R Matlab-у проигрывает по "матричной" производительности (ну, как говорится, "но любим мы его не за это" ). Я бы затачивался на программирование маленького 3D-просмотрщика с возможностью скроллинга и масштабирования и уже упомянутым data reduction при уменьшении масштаба (увеличения размаха по осям). Я знаю, как это сделать в R и Origin, но сам точно делать не буду - и занят, и жалко времени. Могу лишь дать советы. |
|||||
trix Пользователь Ранг: 4 |
18.01.2019 // 10:02:02
Спасибо за подсказки, буду пробовать. Я так понял, что с помощью готовых пакетов справиться не получится, это как минимум. Придется осваивать азы программирования... |
|||||
trix Пользователь Ранг: 4 |
18.01.2019 // 10:07:32
Спасибо, тогда разберусь с представлением данных в нужном виде, потому что пока есть только простая экселевская таблица на 50 Мб. |
|||||
Каталог ANCHEM.RU Администрация Ранг: 246 |
|
|||||
bf109xxl Пользователь Ранг: 1727 |
18.01.2019 // 11:19:14
Получится - Origin, SigmaPlot, IgorPro, TecPlot позволяют строить 3D-поверхности "мышкой" и тыканьем в менюшки. Но они все довольно дорогие. Есть несколько бесплатных альтернатив, но мне они не понравились, когда ознакамливался. Просто _любой_ пакет обработки и визуализации данных даже при наличии развитого GUI - это среда программирования, но не все об этом знают или хотят знать, поэтому используют лишь небольшую часть функционала таких пакетов. R/Python - это как раз другой подход, где все осуществляется через скриптовый язык. Но программирование задач отображения данных в них несложное. Для R существует множество расширений, позволяющих решить как широкий спектр определенных задач, так и отдельную конкретную задачу (здесь и далее я не упоминаю python не потому что он чем-то хуже, просто я с ним не работаю, python более "программистский", более шустрый, но на мой вкус менее удобный для _моих_ задач). Есть и специфические расширения для масс-спектрометрии, но я их не использовал. Сохраните таблицу в csv-формате (только числа, никаких пояснений, позволяющих понять, к какому объекту относятся данные - мне лишние сведения не нужны), заархивируйте в zip/rar/7z и положите файл на какой-нибудь файлообменник. Если, конечно, сочтете это приемлемым. |
|||||
OldBrave VIP Member Ранг: 1330 |
18.01.2019 // 18:15:31
Как уже ранее отмечалось выше, MS-спектры дискретны. Сигнал с MS-детектора всегда дополнительно содержит дискретную фоновую составляющую. "Поверхность отклика" в целом не будет информативной, разве что от слова "посмотреть" картинку. |
|||||
SergeyK Пользователь Ранг: 2168 |
19.01.2019 // 10:22:47
Да почему не будет-то? Насколько я понимаю, автор полный ионный ток по массам хочет развернуть. В области чистого силоксанового фона будут впадины и всё, плюс можно срезать низкие интенсивности. Обычно у нас только ось времени и интенсивность, тут третья ось появится, с m/z. Зачем это делать, если для расчетов можно просто извлечь характеристический ион в интенсивность от времени, вопрос уже другой, может это протеомика какая-то неведомая. |
|||||
vmu Пользователь Ранг: 1330 |
19.01.2019 // 11:23:07
В сети есть примеры. Вот для ЖХ-МС: https:// https:// В широком диапазоне масс и времен удерживания карта выглядит не очень. В узком диапазоне какая-то наглядность появляется. Низкие интенсивности фонового сигнала, конечно, желательно отсекать. Это улучшит вид карты. |
|||||
gennadyrs Пользователь Ранг: 11 |
19.01.2019 // 13:25:34
Редактировано 1 раз(а) Пришлите мне образцы файлов, экспортированных программой, и я, если смогу, переделаю свою программу под эти файлы и пришлю вам. Моя программа Программа написана на простом языке программирования javascript и пользователи могут сами изменять её и добавлять новые возможности. Моя почта gesen на yandex.ru |
|
||
Ответов в этой теме: 22
|
|
ЖУРНАЛ | ЛАБОРАТОРИИ | ЛИТЕРАТУРА | ОБОРУДОВАНИЕ | РАБОТА | КАЛЕНДАРЬ | ФОРУМ |
Copyright © 2002-2022 «Аналитика-Мир профессионалов» |
Размещение рекламы / Контакты |