Страница 1 из 1
Отображение и привязка полей данных из excel
Добавлено: 21 дек 2016, 16:42
Тимиргалин Салават
В excel был выполнен расчет напряженности электромагнитного поля вблизи антенны, результат расчета представляет из себя эксель таблицу 100x100 ячеек со значениями параметра, шаг между ячейками - 1 метр, сама антенна расположена посередине - в ячейке 50,50.
Подскажите, пожалуйста,как лучше подготовить эти данные и какими инструментами проще всего привязать их к карте.
Re: Отображение и привязка полей данных из excel
Добавлено: 21 дек 2016, 18:43
Skywalker
Проще всего будет ваши данные представить в виде таблицы X,Y,P. Где X,Y – прямоугольные координаты точек вашей системы координат, P – значение параметра. После этого пересчитать координаты в систему координат проекции, и добавить в ГИС стандартным инструментом.
Re: Отображение и привязка полей данных из excel
Добавлено: 21 дек 2016, 20:23
thegeo
На мой взгляд, наиболее простой вариант это уже в Excel переформировать данные в пригодный для загрузки в MI формат. Например, с помощью следующего кода.
Код: Выделить всё
Option Base 1
Sub CreateGrid()
Dim tbGridValue As Variant
Dim tbGrid(15000, 4) As Variant 'id,x,y,value
Dim n, m As Integer 'строк, столбцов
Dim i, j, k As Integer
Dim x, y, dx, dy As Double
tbGridValue = Sheets(1).Range("A1").CurrentRegion 'исходные данные
n = UBound(tbGridValue, 1)
m = UBound(tbGridValue, 2)
k = 0
dx = 1
dy = 1
For i = 1 To n
y = y + dy
For j = 1 To m
k = k + 1
x = x + dx
tbGrid(k, 1) = k
tbGrid(k, 2) = x
tbGrid(k, 3) = y
tbGrid(k, 4) = tbGridValue(i, j)
Next
x = 0
Next
Sheets.Add
Sheets(1).Name = "grid"
Sheets(1).Range("A1:D15000") = tbGrid 'результат для загрузки в MI
End Sub
Далее в обычном порядке загружаем этот лист в MapInfo, выполняем Таблица/Создать точечные объекты (проекция План-Схема). Ну а далее по интересам, например Карта/Создать тематическую карту.
Re: Отображение и привязка полей данных из excel
Добавлено: 21 дек 2016, 20:33
gamm
Тимиргалин Салават писал(а):Подскажите, пожалуйста,как лучше подготовить эти данные и какими инструментами проще всего привязать их к карте.
я бы посоветовал сделать наоборот: создать сетку на нужную территорию (вокруг антенны), в нужной системе координат. Мапинфо для этого не годится, а вот QGIS волне. Сохранить (или вообще создать руками) в текстовом формате (ASCII Grid, SURFER), конвертировать в X,Y,Z, и посчитать ваши величины в этих точках (пересчитав расстояние до центра по теореме Пифагора). А потом вставить эти значения обратно в сетку. При наличии минимальных навыков программирования на это уйдет немного времени, и получите готовый продукт.
Re: Отображение и привязка полей данных из excel
Добавлено: 21 дек 2016, 22:00
thegeo
Мапинфо для этого не годится, а вот QGIS волне.
Смешно.
Re: Отображение и привязка полей данных из excel
Добавлено: 22 дек 2016, 02:52
Boris
Сколько всяких и разных идей. А зачем столько вариантов того как чистить зубы гаечным ключом?
Автор не указал, что собственно он знает о том как его сетка 100на100 переносится в систему координат, которая ему нужна. К чему остальные советы? Я знаю бездну вариантов того, что происходит потом.
Вот самые разумные два:
1. автор знает как каждая точка попадает в точку на местности. Далее есть варианты, но самый простой, если он знает как присвоить каждой точке координаты уже в Excel и умеет превратить 100х100 в столбик 10000. Столбик: X,Y,Z, но в векторе. Надо их загрузить в Mapinfo, а в MapInfo есть простейший построитель GRID-ов, но тут вроде супер сложный и не нужен, а может вообще не нужен. И всё - поле вы уже имеете.
2. Автор не знает как 100на100 отображается на местность, но может это хоть как то моделировать. Потому, как если он вообще ничего не знает, то тут ему никто и не поможет. 100на100 - это опять же X,Y,Z только уже в системе координат грида(растра). Да, 100на100 будут считаться от 0, а не от -50. Я уверен, что это не критично. Формат ASCII-grid Mapinfo умеет открывать, а любой открытый растр/грид позволяет привязать в специальном окне по 3-м точкам. Визуализация грида, так же заложена в базовые функции Mapinfo.
А что там собственно надо было сделать? Я задачи то и не увидел, так отдельные шаги к достижению ХЗ чего.
PS
И если я еще помню математику, то точка (50,50) не является центром сетки 100 на 100. 101 на 101 - возможно.
Re: Отображение и привязка полей данных из excel
Добавлено: 22 дек 2016, 03:28
Тимиргалин Салават
Всем большое спасибо за советы. Буду пробовать.
Re: Отображение и привязка полей данных из excel
Добавлено: 23 дек 2016, 02:18
Тимиргалин Салават
Построил тематическую карту с параметром напряженности поля, однако в процессе работы возник еще один вопрос - можно ли вырезать на получившейся диаграмме отображение областей со значением параметра ниже определенного порогового значения?
Re: Отображение и привязка полей данных из excel
Добавлено: 27 дек 2016, 23:31
Boris
1. одна тема - один вопрос.
2. если уже есть результат и его необходимо улучшить - прикладывайте архив в составе рабочий набор+файл+таблица привязки.
3. описывайте все же задачу, а не ее части - телепатия не самая сильная сторона авторов на ГИС-лабе.