Какой хороший способ графического представления очень большого количества парных точек данных?


9

В моей области обычным способом построения парных данных является серия тонких наклонных отрезков, накладывающих их на медиану и КИ медианы для двух групп:

введите описание изображения здесь

Однако этот тип графика становится намного сложнее для чтения, так как количество точек данных становится очень большим (в моем случае у меня порядка 10000 пар):

введите описание изображения здесь

Уменьшение альфы немного помогает, но все же это не так здорово. В поисках решения я наткнулся на эту статью и решил попробовать реализовать «график параллельных линий». Опять же, это очень хорошо работает для небольшого числа точек данных:

введите описание изображения здесь

N

введите описание изображения здесь

Я полагаю, что мог бы отдельно показать распределения для двух групп, например, с коробочными диаграммами или скрипками, и построить линию с полосами ошибок вверху, показывающую два медианы / КИ, но мне действительно не нравится эта идея, так как она не будет передавать парный характер данных.

Я также не слишком заинтересован в идее двумерной диаграммы рассеяния: я бы предпочел более компактное представление, в идеале такое, в котором значения для двух групп изображены вдоль одной оси. Для полноты, вот как данные выглядят как двумерный разброс:

введите описание изображения здесь

Кто-нибудь знает лучший способ представления парных данных с очень большим размером выборки? Не могли бы вы связать меня с некоторыми примерами?

редактировать

Извините, я явно недостаточно хорошо объяснил, что я ищу. Да, график 2D-разброса работает, и есть много способов улучшить его, чтобы лучше передать плотность точек - я мог бы раскрасить точки в соответствии с оценкой плотности ядра, я мог бы сделать гистограмму 2D Я мог бы построить контуры поверх точек и т. Д. И т. Д.

Тем не менее, я думаю, что это излишне для сообщения, которое я пытаюсь передать. Меня не очень интересует показ 2D плотности точек как таковой - все, что мне нужно сделать, это показать, что значения для «баров», как правило, больше, чем для «точек», настолько простым и понятным, насколько это возможно. и без потери существенного парного характера данных. В идеале я хотел бы построить парные значения для двух групп вдоль одной, а не ортогональной оси, поскольку это облегчает визуальное сравнение их.

Возможно, нет лучшего варианта, чем точечная диаграмма, но я хотел бы знать, есть ли альтернативы, которые могут сработать.


1
Вы пробовали просто построить соответствующие значения barна горизонтальной и dotвертикальной оси в виде диаграммы рассеяния?
До Хоффмана

@ TillHoffmann Да, я упомянул это в конце моего вопроса. Вероятно, это лучший вариант, который у меня есть на данный момент, но я бы предпочел более компактное представление, в идеале такое, которое бы представляло значения обеих групп вдоль одной оси (возможно, я необоснованно требователен ...). Я добавлю график рассеяния к своему вопросу.
Али_м

извини, я пропустил это. Как вы генерируете свои синтетические данные в данный момент?
До Гофмана

2
Не могли бы вы объяснить, что вы подразумеваете под «компактным» представлением? Диаграмма рассеяния явно превосходит все остальные с точки зрения показа взаимосвязей, а также индивидуально необычных данных в небольшой области; он только растет лучше с увеличением размера набора данных. (10 000 невелико для диаграммы рассеяния.) Вы упоминаете так много разных графиков, что невозможно определить, что вам действительно нужно. Пожалуйста, сообщите нам цель вашей визуализации: какую именно информацию вы надеетесь узнать или передать другим? Насколько точно и быстро вы намерены это воспринимать и понимать?
whuber

1
@whuber Извините за неясность. Я надеялся на способ представления данных таким образом, чтобы значения для обеих групп отображались вдоль одной и той же, а не ортогональной осей (как они представлены на графиках «наклонная линия» и «параллельная линия»). Сообщение очень простое - значения для «баров» обычно выше, чем для «точек». Кроме того, мне не очень важно представлять плотность распределения, хотя я хотел бы сообщить, что в выборке присутствует большое количество пар.
ali_m

Ответы:


7

Учитывая то, как я понимаю вашу цель, я просто вычислю парные различия ( bars - dots), а затем нанесу эти различия на гистограмму или график оценки плотности ядра. Вы также можете добавить любую комбинацию (1) вертикальной линии, соответствующей нулевой разности (2) любой выбор процентилей.

Это будет подчеркивать, какая часть данных имеет barsпревышение dots, и, как правило, каковы наблюдаемые различия.

(Я предположил, что вы не заинтересованы в отображении фактических, необработанных значений barsи dotsна одном графике.)

Можно также построить доверительные интервалы или последующие достоверные интервалы, чтобы указать, являются ли эти различия значительными. (H / T @MrMeritology!)


Добавление к этому ответу: вы также можете построить доверительные интервалы для парных различий, которые наглядно покажут, являются ли различия значительными или нет.
MrMeritology

YВзнак равноμ+смещение(YA)+Δ(YA-Y¯A

2

YВ-YAYA

YВзнак равноμ+смещение(YA)+Δ(YA-Y¯A)+ε
+Δ2(YA-Y¯A)2

Графически вы могли бы показать линии, как вы показали, с уменьшенным альфа-фактором (*), возможно, уменьшив его еще больше, показав только случайную выборку линий. Тогда вы можете раскрасить линии в соответствии с наклоном ...

Для графиков Бланда-Альтмана, упомянутых в комментарии Ника Кокса, посмотрите, например, пример Соглашения между методами с несколькими наблюдениями на человека или просмотрите тег .

(*) альфа-коэффициент здесь представляет собой графический параметр, делающий точки на графике прозрачными, поэтому первые точки на графике не полностью перекрываются последующим перепечатыванием.


1
-

1

Я бы предпочел 2D-график рассеяния. Я бы нарисовал контрольную линию светло-серым для большей контрастности в переполненной области. Чтобы уменьшить скученность, нарисуйте маркеры без рамки, еще больше уменьшите альфа, уменьшите размер маркера.

Тем не менее, если вы больше интересуетесь типичными парами, чем крыльями распределения, попробуйте построить линейную диаграмму кумулятивной суммы по dotsсравнению с кумулятивной суммой bars. Сюжет еще 2D, но с гораздо меньшим количеством чернил. Чтобы сохранить также область построения, вы можете повернуть трассу на 45 °, чтобы рамка служила опорным направлением.

Этот график также показывает любую тенденцию в данных. Если известно, что процесс является стационарным, сортируйте пары, например, по их геометрическому среднему значению sqrt(bars*dots).


0

Я бы порекомендовал построить линии так, как они есть, для медианы и квартилей, или столько процентилей, сколько вы хотите в этом отношении. Медиана может оставаться более толстой / более заметной, чем другие процентильные линии. Это помогло бы сохранить способность видеть, как данные ведут себя во всем распределении, не ставя под угрозу простоту и знакомость графика, который в настоящее время используется в вашей области.

Кроме того, при таком большом размере выборки средний или средний тренд с барами ошибок, вероятно, будет достаточным, так как вы будете так тщательно пользоваться центральной теоремой о пределе. Биомедицинское поле также опирается на эти парные линейные графики, но это часто имеет место, потому что размер выборки может быть порядка 10-20, поэтому важно визуализировать потенциальные точки воздействия.


0

Мое первое предложение - точечный заговор.

Если 10000 точек, неравномерно распределенных на вашем графике, все еще являются размытым облаком, рассмотрите тепловую карту. Цвет пикселя при x = 10,5, y = 11,5 будет указывать, сколько раз значение между 10,45 и 10,55 отображается на значение между 11,45 и 11,55: 0 = белый = RGB (255,255,255), 1 = синий = RGB (0, 0,255), 2 = RGB (1,0254), ... 256 и выше = RGB (255,0,0) = красный


Это, по сути, дает мне такое же представление, как и 2D-разброс, но с меньшим разрешением. Я могу в конечном итоге сделать что-то подобное, но в идеале я надеялся на более компактное представление, которое отображает значения для обеих групп вдоль одной оси, а не ортогональных осей.
ali_m

1
Глядя на график рассеяния, я вижу, что вы теряете много информации в центре своего «пятна чернил». Вам нужно что-то сделать, применяя преобразование (логарифм?) Или с картой здоровья, которую я предлагаю.
Дирк Хорстен

Сожалею! Ваше предложение вполне разумно - я просто недостаточно хорошо объяснил, что я ищу. Да, двумерный график (точечная диаграмма, тепловая карта, контурный график и т. Д.) Отлично подходит для представления плотности точек выборки, но я думаю, что это больше информации, чем мне действительно нужно отображать. Все, что мне нужно сделать, это показать, что значения для «баров» обычно выше, чем для «точек». Я ищу самый простой способ показать это, сохраняя при этом парный характер данных.
ali_m

Разве диагональ на графике катера недостаточно хорошо указывает направление?
Дирк Хорстен

Нет, но, возможно, у меня есть необоснованные ожидания :-)
ali_m
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.