Я отнюдь не хорош в статистике, но думаю, что попал в нужное место. Мой вопрос прост:
Моя проблема состоит в сравнении численности населения нескольких штатов в маленькой стране, но в некоторых штатах население составляет 3000 000 человек, а в некоторых - 2000 человек.
Я рисую это на карте, и «интенсивность» цвета зависит от того, как население каждого штата сравнивается с населением всей страны.
Проблема состоит в том, что государства с большим населением показаны с действительно интенсивными цветами, а маленькие государства едва имеют какой-либо цвет.
Есть ли простой способ «нормализовать» или сделать данные сопоставимыми?
Я не знаю, правильно ли я объясняю себя, но надеюсь, что кто-нибудь мне поможет. Пожалуйста, прокомментируйте, если мой вопрос не ясен, и я уточню.
Спасибо за помощь!
Ответы:
Извините, но для меня это звучит так, будто вы пытаетесь исправить то, что не сломано. На самом деле, вы можете даже пытаться сломать то, что не сломано. Если у вас есть количественная переменная (здесь популяция), которая охватывает широкий диапазон, то любой показатель, который вы используете для его представления, также должен охватывать широкий диапазон.
Но для всех вещей, связанных с цветом (и особенно карты), ключевой источник, я думаю, ColorBrewer
источник
Хороший вопрос. Одним из решений является изменение масштаба цветов, чтобы они были более равномерно распределены, или распределение с более низкими хвостами ... но тогда ваша легенда должна быть достаточно ясной, потому что деформация шкалы как-то несправедлива ...
Например, в R масштабирование нормали к униформе. (то, что у вас есть, возможно, идет в другую сторону, так как у вас большие хвосты, и вы хотите, чтобы они были меньше, но принцип тот же)
источник
Вы можете разделить на общую численность населения. Это гарантировало бы, что все находится между 0 и 1. Если шкалы все еще слишком несопоставимы, рассмотрите логарифмическую шкалу.
источник
Мне неловко спрашивать об этом, но действительно ли вы намерены использовать цвет для изображения количественного показателя? Нет ли способа поставить планку в каждом штате, высота которой представляет количество?
Другой способ может состоять в том, чтобы показать карту с областями, представляющими географические области, вместе с картой, где площадь каждого штата пропорциональна численности населения - подобно тому, как это делает сенсорный гомункулус . Но это было бы болезненное количество рисования - я не знаю ни одного способа автоматизировать это (хотя это может существовать)
источник
Ваша заявленная цель:
Ваша заявленная проблема:
Цель нормализации ваших данных перед отображением
Этот ответ будет отсутствовать, так как я не уверен в контексте того, почему вы делаете карту.
Тем не менее, вот некоторые мысли для изучения: нормализуйте свои данные так, чтобы карта дала интересное значение потенциальным читателям карты, чтобы они могли связать то, что они видят на вашей карте, с какой-то концепцией, о которой они обычно думают. По сути, я думаю, что ваши новые нормализованные числа должны быть связаны с некоторой качественной концепцией, которую читатели карты находят интересной для понимания (случайный фрагмент: Мера = Количество х Качество, Гегель).
Два предложенных способа нормализации ваших данных
1. Чтобы дать представление о том, сколько открытого пространства находится в каждом штате.
Создайте новую переменную состояния для плотности населения, рассчитав население, деленное на общую площадь штата.
2. Для того, чтобы раскраска состояний контрастировала друг с другом.
Создайте новую переменную состояния, рассчитав отклонение от среднего значения каждого состояния. Например, скажем, у вас есть 3 штата с населением следующим образом:
Среднее будет около 50.
Значения новой переменной для каждого состояния будут следующими:
Вы можете использовать любую цветовую схему, где положительные числа контрастируют с отрицательными числами (Google ColorBrewer для многих примеров цветовых схем для карт).
источник