
На форме выше красным обведено условие «стыковки» двух таблиц. Теперь осталось пересохранить полученный запрос Query1 в виде карты с объединенной атрибутикой — меню Файл>Сохранить Запрос:

… ну, скажем, в файл с именем MapExample:

Результат нашей работы может выглядеть сл. образом:

Вот теперь у нас всё готово для обработки в MapInfo полученных из Excel данных . Например, можно построить по меню Карта>Создать тематическую карту тематическую карту по параметру p2o5 (содержание подвижного фосфора, как пример):

Ссылки к статье
1. Как нанести на карту точки по данным Excel — смотрите на нашем сайте
2. Как экспортировать данные из MapInfo в Excel — смотрите тут
3. Как импортировать данные из Excel в ArcGIS — смотрим в этой статье
©Simashkov.2011.
13.12.2011 г.
Открыть , выбираем тип данных Excel ну и сам файл естественно:

Жмём кнопку Открыть и видим сл. форму:
![]() |
Здесь устанавливаем лист, с которого будем считывать наши данные и диапазон ячеек. |
Далее определяем структуру таблицы MapInfo, в которую будем импортировать данные:
![]() |
Как правило, на этой форме менять ничего не надо. |
Затем идём в меню Таблица>Создать точечные объекты
:

А в следующей форме определяем колонки
X/Y,
из которых будем брать данные
:

После этого программа создаст слой точечных объектов (его имя будет такое же, как и у списка). Осталось добавить этот слой к нашей карте. Результирующая картинка может выглядеть так:

На карте выше, нанесённые таким образом точки обозначены значками в виде крестиков
.
Ссылки к статье:
1. Как решить аналогичную задачу по импорту данных из Excel в ГИС ArcView, можно посмотреть на нашем сайте здесь.
2. Как решить обратную задачу по экспорту данных из MapInfo в Excel — смотрите на нашем сайте по этой ссылке
3. О том, как привязать данные Excel к карте MapInfo — смотрите тут
©Simashkov.2011.
09.04.2011 г.
Проект) … :
… в виде Windows-приложения и назовем его InsSotrudniki :
Далее добавим в проект Win-форму приблизительно следующего вида и разместим на ней необходимые управляющие элементы — кнопки и текстбоксы :
На событие нажатия на кнопку btnInsert Click ‘вешаем’ код такого содержания, который в Visual Studio будет выглядеть сл. образом :
Поскольку в данном примере приходиться работать с MS SQL Server, в пространстве имен не забудьте указать соотв. ссылки (выделено красным):
Запускаем наше нехитрое приложение для вставки новых записей в таблицу MS SQL Server по F5 на выполнение и видим такой результат :
С целью проверки результата можно заглянуть в соответствующую табличку в MS SQL Server — для наглядности одна и та же запись была вставлена 3 раза:
Для тех, кто хочет воспользоваться данным примером, приводим код программы , который запускается при нажатии на кнопку Вставить запись :
private void btnInsert_Click(object sender, EventArgs e)
{
// Создаем и открываем соединение с MS SQL Server …
string strConn = «Data Source = sim\\sqlexpress; Initial Catalog = MySampleBase; Integrated Security=True»;
SqlConnection Conn = new SqlConnection(@strConn);
Conn.Open();
// Заготовка Sql-предложения Insert …
string sInsSql = «Insert into Sotrudniki(SotrId, FIO, Dolgnost, Zarplata) Values({0}, ‘{1}’, ‘{2}’, {3})»;
// Считываем данные с формы …
int ID = Convert.ToInt32(txtID.Text);
string FIO = txtFIO.Text;
string Dolgnost = txtDolgnost.Text;
float ZPlata = Convert.ToSingle(txtZarplata.Text);
// Формируем запрос на вставку данных с формы …
string sInsSotr = string.Format(sInsSql, ID, FIO, Dolgnost, ZPlata);
// Создаем команду …
SqlCommand cmdIns = new SqlCommand(sInsSotr, Conn);
// Выполняем команду на вставку записи ..
cmdIns.ExecuteNonQuery();
// Выводим сообщение …
MessageBox.Show(string.Format(«Запись {0} успешно вставлена !», FIO), «Сообщение»);
}
Конечно, разобранное приложение чрезвычайно простое и в нем нет , например, необходимых в таких случаях проверок, скажем, на ввод пустых значений, запрета вводить символы в поле Зарплата или проверки соединения с SQL-сервером. Но оно даст начинающим программистам представление о том, как организовать ввод записей в базу данных MS SQL Server через графический интерфейс пользователя WinForms посредством объектной модели ADO.NET
© Simashkov.2016
13.08.2016 г.

2. Физический способ обрезки
Предположим, что наша карта, в качестве примера, выглядит следующим образом:

На рисунке выше таблица, по которому будем обрезать слои карты (административное деление — adm, гидрография —hydro) будет называться Ramka. Её нужно подготовить заранее. Далее. Тот слой, который будем обрезать, необходимо сделать редактируемым. Для этого в Менеджере слоёв выставляем соотв. опцию (птичку под значком карандаша).
Следующий шаг — выделяем объекты в редактируемом слое. Проще всего это сделать по меню Запрос>Выбрать :
![]() |
В этой форме указываем слой для выборки — adm , в нашем случае. |
Продолжаем. Теперь необходимо указать выбранный слой в качестве цели — идём в меню Объекты>Выбрать изменяемый объект :

Наша карта приобретёт сл. вид:

На картинке выше, чтобы выбрать слой-маску Ramka (прямоугольная область) нужно прижать клавишу Ctrl и ткнуть в него курсором мыши. Теперь наступает завершающая операция — обрезка слоя-цели. Для этого идём в меню Объекты>Удалить внешнюю часть :

Появляется форма, в которой нужно указать, что делать с атрибутивной информацией. Здесь нужно выбирать опции, исходя из контекста конкретной ситуации:

Карта приобретёт сл. вид:

Как видно, мы успешно произвели обрезку слоя административных границ. Чтобы сохранить обрезанный слой в виде отдельной таблицы идём в меню Файл>Сохранить копию:

… и задаём условие , что сохранять будем обрезанные объекты — Selection:

Жмём на кнопку Новое имя и даём имя обрезанному слою (в нашем примере admCut ):

Аналогичным образом можно обрезать и слой полилиний — например, гидрографию.
В результате можно получить карту, вроде этой:

В качестве маски можно выбрать, естественно, слой любой геометрии.
Задача по обрезке карты по слою-маске (шаблону) успешно решена!
Далее можно посмотреть информацию о том, Как в MapInfo обрезать растровую карту
Как выполнить аналогичную задачу в ArcGIS — смотрите на нашем сайте здесь.
03.09.2011 г.
©Simashkov.2011
Data и подхватываем только-что созданный .dbf — файл:

Программа предлагает нам выбрать опции построения регулярной сетки — колонки данных X/Y/Z, метод интерполяции, размер ячейки и т.д. :

Жмём OK и получаем файл сетки в формате программы Surfer с расширением .grd. Теперь можно различным образом визуализировать эти данные, например построить карту изолиний (как пример) по меню Map>New Map>Contour Map :

Ну вот, задачу по экспорту поверхности из ArcGIS в Surfer, собственно, и решили.
Как экспортировать поверхность из MapInfo в Surfer — смотрите в этой статье
Как перенести поверхность из MapInfo в ArcGIS — смотрите статью на нашем сайте по этой ссылке
©Simashkov.2011
03.12.2011 г.
MS SQL Server>Среда SQL Server Management Studio :

Для создания новой базы ‘с нуля’ в Server Management Studio становимся на ветку Базы данных, щёлкаем правой кнопкой и выбираем в контекстном меню Создать базу данных:

Прим. В версиях MS SQL Server 2012 и 2014 в смысле интерфейса мало что изменилось по сравнению с 2008 -й.
Появляется форма, в которой нужно указать имя вашей новой базы данных — пусть в нашем примере это будет учебная БД OOO_RogaKopyta:

В столбце Путь можно указать локализацию базы данных, если хотите, чтобы она отличалась от принятой по умолчанию:
Прим. Как определить путь к базе данных можно посмотреть здесь

Жмём кнопку OK и видим в списке баз данных нашу вновь только что созданную базу:

Что характерно. Создать новую базу данных в MS SQL Server можно и программным путём, используя конструкцию Create DataBase на языке T-SQL, что-то вроде этого:

Выполняем созданный запрос, и приходим к результату аналогичному тому, что мы достигли ‘ручным’ путём.
Всё, база данных создана. Правда, пока она пустая. В следующем пункте расскажем о том, как создавать таблицы в базе данных.
Еще
,
возможно
,
несколько полезных советов для пользователей по работе с
MS SQL Server можно посмотреть здесь
© Simashkov.2012
22.07.2012 г.
В ГИС MapInfo есть замечательный инструмент визуализации ваших пространственных данных — построение 3-D карт. К сожалению, по опыту, им мало кто пользуется. А напрасно. С помощью этого инструмента можно иногда создавать весьма интересные вещи.
Обязательным условием для построения 3-D карты является наличие в вашей карте слоя-поверхности (файл .mig — MapInfo Grid). Без этого слоя опция 3-D будет недоступна (как построить поверхность можно посмотреть здесь).
Далее, предположим, что наша исходная картинка выглядит так:

… или так с использованием растра:

Для построения 3-D идём в меню Карта>Создать 3-D карту.
Появляется следующая форма настроек отображения 3D карты:

Жмём кнопку OK и видим результат наших усилий, который может выглядеть приблизительно так :

… или так с растровой подложкой :
В общем, на мой взгляд, получается довольно наглядно. Локализации «проблемных» мест выглядят как выразительные горные пики или, наоборот, как глубокие впадины.
Как и любую другую 3-D модель, вы можете вращать карту на 360 градусов по всем трём осям XYZ, добиваясь наиболее выразительного ракурса.
Ремарка от 03.02.2013 Есть более свежая статья по созданию 3D карты в MapInfo с которой можно ознакомиться здесь
Как создать 3D — карту в ArcGIS — смотрите на нашем сайте здесь
02.05.2011 г.
©Simashkov.2011
В предыдущем пункте мы научились создавать поверхности средствами ГИС MapInfo. Теперь, для того, чтобы придать нашим картограммам более профессиональный вид, научимся строить изолинии и сетки. Изолинии — это линии равного уровня, объединяющие точки с одинаковым значением какого-либо параметра.
В ГИС MapInfo для построения изолиний проще всего воспользоваться набором утилит «Поверхность»(3DView) из комплекта стандартных приложений к русской версии MapInfo (более подробную документацию в формате PDF для данного набора утилит можно Просмотреть по сл. ссылке — https://yadi.sk/i/Kqkj9YaWVrEPa). Установив утилиты, для построения изолиний, загружаем нужную нам поверхность. Затем идём Программы>Поверхность>Выполнить построение изолиний:
| Одно важное замечание. Для построения изолиний, в качестве входного источника данных, для указанной утилиты используется интерполированная поверхность. |
Лучше сразу строить изолинии в виде полилиний
.
К сожаления, опция «Сглаживать» по каким-то причинам является недоступной. По опыту, более гладкие изолинии получаются на поверхностях, построенных на более крупных ячейках. Чтобы добиться приемлемого результата, наверно, придётся немного поэкспериментировать с интервалами. Результирующая картинка может выглядеть приблизительно так:

Кстати, «проблемные» области на таких картограммах выглядят очень наглядно. На приведенной картограмме некоторые их них обведены красным цветом. Такую пространственную локализацию проблемных областей трудно прочитать на традиционных дискретных тематических картограммах.
Километровая сетка на приведенной выше картограмме была построена с помощью очень удобной утилиты GridWine, которую можно качнуть отсюда
Ссылки к статье:
1. Более подробную информацию по построению изолиний и поверхностей в MapInfo можно посмотреть на нашем сайте по этой ссылке
2. Более подробную информацию по построению координатных сеток в MapInfo можно посмотреть на нашем сайте здесь.
3. Как построить изолинии в ArcGIS — смотрите здесь
4. Как можно создать координатные сетки в ArcGIS — смотрите на нашем сайте в этой статье
©Simashkov.2010
29.06.2010 г.
Ниже приведен пример(образец) оформления в ГИС MapInfo тематической картограммы по показателю кислотности pH для районного агрохимического атласа, созданной в Лаборатории АгроГИС-технологий (г. Калуга). Картограмма создана на основе оверлея космоснимка Landsat7 (разрешение ~ 30 метров) и интерполированной тематической поверхности — в данном случае, по показателю кислотности почв pH по результатам агрохимического обследования Козельского района Калужской области. Масштаб районной картограммы — в 1 см 800 метров.
Пример оформления картограммы в Surfer смотрите здесь


На рисунке выше виден существенный недостаток такой карты — программа провела интерполяцию в «пустых» областях (обозначено красным). Стоит задача как-то избавиться от них. В Surfer‘е эта проблема решается с помощью так называемых «бланкованных» карт.
Делается это следующим образом. Становимся в Менеджере объектов на карту и по правой кнопке мыши выбираем пункт Digitize в контекстном меню:

… и начинаем мышкой обходить по контуру область, которую хотим исключить из интерполяции (мелкие красные крестики на рисунке ниже):

Небольшой совет. Если вы хотите создать замкнутый бланкованный контур, то это можно сделать простым копированием и вставкой координат первой точки в последнюю в окне Digitized Coordinates
По окончании обводки на форме Digitized Coordinates в меню File>Save As сохраняем бланкованную область в виде файла с расширением .bln .
Далее нам необходимо построить новую интерполированную сетку, с учётом «пустых» областей. Для этого идём в меню Grid>Blank:

… загружаем исходную (не обрезанную) сетку:

… и область обрезки — файл с раcширением bln:

Сохраняем полученную таким образом новую сетку :

Делаем пробную карту и смотрим результат:

Вот теперь всё нормально. Исключили из результатов интерполяции лишние области, можно двигаться дальше.
Строим карту с отмывкой — меню
Map>New>Shaded Relief Map
:
Таак … Видим очередной недочёт такой карты (ох, вся жизнь в борьбе 🙂 — бланкованные области залиты чёрным. Сейчас выправим этот недостаток . В Менеджере объектов становимся на карту-отмывку, на вкладке General идём в раздел Missing Data и выбираем цвет заливки для областей с отсутствующими данными белым:

Карта явно стала немного симпатичней. Теперь поднимем слой с изолиниями выше слоя-отмывки и в свойствах слоя (Property Manager) выставляем опцию Fill Contours:
Следующий шаг — придаём нашей карте более привлекательный цветной вид. Для этого на слое изолиний на вкладке Levels выбираем подходящую цветовую палитру — например, Terrain. Теперь наша карта будет выглядеть так:

Далее «заставим» работать слой-отмывку (не напрасно же мы его создавали!). Для этого на карте контуров идём на вкладку Layer и выставляем параметр Opacity (Прозрачность ) 50 … 60 % :

Осталось только разобраться с осями и подписью к ним.
Чтобы нанести координатную сетку, опять в Менеджере объектов становимся на слой осей (Left/Bottom Axis) и в пункте Major Grid Lines выставляем соотв. флажки:

Если желаем несколько изменить шаг сетки, то переходим на вкладку Scaling , сбрасываем флажок Automatic и в Major Interval задаём новый шаг сетки (100 000 для случая нашего примера):

Чтобы подправить размер шрифта подписей на осях на вкладке General в пункте Font Properties меняем настройки шрифта подписей:

Ах, даа… Остался ещё один момент. Желательно нанести подписи к изолиниям. Для этого в Менеджере объектов становимся на слой контуров, выбираем вкладку Levels свойств слоя (Property Manager) и выставляем опцию Level methods в Advanced:

Теперь жмём на кнопку Edit Levels (см. рисунок выше) и попадаем в форму настроек контуров и изолиний:

Щёлкаем по заголовку столбца Label (см. рис. выше) — видим форму Label:

Для выбора настроек фонта подписей жмём, само собой, Font:

Следуем далее — переходим на карту, жмём на правую кнопку и в контекстном меню выбираем Edit Contour Label:

Теперь прижимая Ctrl, тыкаем курсором в нужную изолинию. Программа нанесёт на карту метку значения уровня контура.
В окончательном виде наша учебная карта модели местности с отмывкой рельефа в программе Surfer может выглядеть сл. образом:

Но иногда бывает весьма полезно создать 3D-модель рельефа местности. Сделать это в программе Surfer очень легко.
Сначала нужно вставить новый чертёж (Ctrl+N). Затем идём меню Map>New>3D Surface или щёлкаем в соответствующую кнопку:

Выбираем файл сетки для построения 3D карты … :

… и видим сл. картинку:

На рисунке выше видна явная непропорциональность в отображении высоты рельефа. Сейчас выправим этот недостаток. Становимся в Менеджере объектов на Maps и на вкладке Scale свойств карты (Property Manager) уменьшаем значение параметра Length для Z-координаты:

Вот теперь наша 3D карта выглядит как надо.
На этом, пожалуй, и остановимся. Аминь! 🙂
Небольшая подборка Советов по работе в Surfer находиться здесь