2010-05-12 6 views
3

Приложение для Android-приложений загружает некоторые маркеры на оверлее на MapView.
Маркеры размещаются на основе динамического списка GeoPoints.
Я хочу переместить центр карты и увеличить масштаб с помощью большинства предметов.
Наивно, я могу рассчитать суперпозицию всех точек, но я хотел бы удалить точки, которые очень далеки от массы точек из расчета.
Есть ли способ рассчитать это? (например, вероятность, статистика ..?)Определение, где анимировать карту с учетом списка географических точек

ответ

1

Я однажды решил ту же самую проблему, которую вы описываете для приложения для недвижимости, которое я написал некоторое время назад. То, что сработало для меня было:

  • Вычислить центральную точку как-то (медианы, в среднем широчайших и Лона, или любой другой)
  • Calc расстояния между этой воображаемой точкой и каждым из ваших реальных штырей
  • Используйте алгоритм стандартного отклонения и удалите любой штырь, расстояние которого имеет StdDev> 2 (или любой порог для вас)
  • Повторите шаги 1 - 3 (вы будете использовать новую центральную точку каждый раз, когда вы зацикливаете), пока там не более o utliers удалить на этапе 3

Этот подход отлично подходит для моих нужд. Но я уверен, что есть более интересные способы решить ту же проблему, если вы посмотрите вокруг. Например, я нашел интересную CompSci бумагу ...

http://people.scs.carleton.ca/~michiel/outliers.pdf

Успехов!

 Смежные вопросы

  • Нет связанных вопросов^_^