Курс лекций по дисциплине «Базы данных в гис» для студентов факультета «Геодезия картография и землеустройство» Николаев 2008 г
Вид материала | Курс лекций |
Содержание4.5. Открытие файлов Файлы DBF 4.6. Геокодирование (помещение данных на карту) Присоединение координат Отображение данных на Карте |
- Курс лекций по дисциплине «Компьютерные сети и телекоммуникации» для студентов факультета, 1959.57kb.
- Лекция №3. Организация данных в гис первым шагом к проекту гис является создание пространственной, 268.29kb.
- Учебно-методический комплекс по дисциплине «Базы данных» для студентов специальности, 536.91kb.
- Мирончик Игорь Янович ClipperIgor@gmail com (496)573-34-22 курс лекций, 28.92kb.
- Методические указания к самостоятельной работе студентов по курсу "Базы данных" Москва, 92.31kb.
- Курс лекций "Базы данных и субд" Ульянов В. С. Лекция Язык sql. Создание таблиц и ограничений, 146.46kb.
- Лекций для студентов 4 курса педиатрического факультета, переведенных на контролируемую, 18.72kb.
- Курсовая работа по дисциплине «Базы данных» на тему: «Разработка базы данных для учета, 154.05kb.
- Курс лекций для студентов заочного факультета самара, 1339.16kb.
- Конспект лекций по курсу "базы данных" (Ч., 861.92kb.
4.5. Открытие файлов
На этом занятии мы научимся открывать файлы наиболее часто используемых форматов, таких как DBF (формат базы данных), MS Access и MS Excel.
Файлы DBF
Многие программные продукты, работающие с информационными массивами, могут создавать файлы в формате DBF. Давайте откроем один из файлов примеров для нашего учебника, содержащий информацию о клиентах, "Dc_cust.dbf".
- Выполните команду "Файл > Открыть таблицу".
- В списке "Тип файлов" выберите "dBase DBF".
- Выберите "Dc_cust", находящийся на компакт-диске MapInfo Professional в папке "mapinfo\data\tut_data\tut_usa\USA\DC".
- Нажмите "Открыть".
Появится диалог "Файлы dBase DBF".
- Выберите набор символов "Windows US & W. Europe ("ANSI")" и нажмите OK.
Клиенты, находящиеся в округе Колумбия (DC), будут отображены в виде таблицы в окне Списка. Строки называются записями, а колонки - полями. В строке состояния (в нижнем левом углу окна MapInfo) отображается количество записей в таблице. MapInfo создаст новый файл, называющийся "Dc_cust.tab". Этот новый файл не содержит данных, в нем просто содержится ссылка на файл с данными и указывается тип данных и способ их организации. Реально данные будут извлекаться из исходного файла.
Поскольку MI Pro может и читать и записывать данные в формате .DBF, Вы теперь можете обновить информацию в этой таблице.
В следующий раз, когда Вам потребуется посмотреть эти данные, Вы можете просто открыть этот .TAB файл, и MapInfo откроет файл данных автоматически.
База данных MS Access
Вы можете открывать и использовать таблицы базы данных Access в MapInfo.
- Выполните команду "Файл > Открыть таблицу".
- В списке "Тип файла" выберите "Microsoft Access Database".
- Выберите "Us_customer" и нажмите "Открыть".
Если база данных Access содержит несколько таблиц, MapInfo предложит Вам выбрать для открытия одну или более таблиц в диалоге:
- Из списка выберите "Us_Customer".
- Нажмите OK.
Информация отобразится в окне Списка.
MapInfo может читать и записывать данные в формате базы данных Access.
Дополнительную информацию об использовании таблиц MS Access Вы можете найти в Справочной системе MapInfo Professional и документации.
ASCII-файлы
MI Pro также может открывать текстовые ASCII-файлы с данными, разделенными пробелом, табуляцией или специальными символами. MapInfo попросит Вас указать используемый тип разделителя, а также спросит, использовать ли первую строку в качестве заголовка колонок.
Вы можете открыть ASCII-файл в любом текстовом редакторе (например, Notepad или MS Write).
Ниже приведены в качестве примера первые строки текстового файла "Dc_cust". Разделителем служит запятая. Первая строка будет использоваться для формирования названий колонок в таблице.
"Lastname", "Firstname", "Address", "Town", "State", "Zip", "Department"
"PAWLUCK", "BETH", "3645 BANGOR ST SE", "WASHINGTON", "DC", "20020", "Production"
"ALFARO", "JUAN JR", "4240 39TH ST NW", "WASHINGTON", "DC", "20016", "Production"
Возможности редактировать текстовый ASCII-файл в MapInfo нет. Он открывается в MapInfo в режиме "только для чтения".
Электронная таблица Excel
MapInfo поддерживает форматы электронных таблиц Excel и Lotus 1-2-3®. Давайте откроем таблицу Excel.
Прежде чем открыть электронную таблицу в MapInfo, Вам потребуется ответить на следующие вопросы:
- Какую область данных Вы хотите использовать?
- Является ли первая строка диапазона ячеек или именованной области данных заголовком колонок?
Чтобы открыть пример электронной таблицы:
- Выполните команду "Файл > Открыть таблицу".
- В списке "Тип файла" выберите "Microsoft Excel".
- Выберите "Dc_Cust" в папке "mapinfo\data\tut_data\tut_usa\USA\DC".
- Нажмите "Открыть".
Появится диалог "Информация из Excel". Нажмите OK.
Электронная таблица появится в окне Списка.
Электронные таблицы открываются в MapInfo в режиме "только для чтения".
Урок завершен! Выполните команду "Файл > Закрыть все". Теперь Вы готовы освоить следующий раздел этого Учебника.
4.6. Геокодирование (помещение данных на карту)
Теперь мы разместим клиентов на карте. Для этого каждой Вашей записи сопоставим пару географических координат.
На этом занятии будем использовать файл dBase, содержащий информацию о клиентах, и наш пример Карты уличной сети округа Колумбия для отображения на ней местоположения клиентов. Мы выполним следующие процедуры:
- Открытие файла в формате dBase.
- Привязка каждой записи к конкретному местоположению на Карте.
- Отображение данных на Карте.
Сначала мы откроем базу данных:
- Выполните команду "Файл > Открыть таблицу". Появится диалог открытия таблицы. Откройте папку "\MapInfo\Data\Tut_data\Tut_Usa\USA\DC" и выберите формат "dBase DBF".
- Выберите "Registr.dbf". Нажмите "Открыть".
- Появится информационный диалог "dBase DBF". Нажмите OK.
Таблица dBase отобразится в окне Списка. Для начала пролистайте таблицу и ознакомьтесь с информацией о клиентах.
Присоединение координат
Прежде чем отобразить данные на Карте, нужно к каждой записи присоединить координаты X и Y. Присоединение координат X и Y к записи происходит, если находится соответствие между адресом в базе данных по клиентам Registr и адресом на Карте уличной сети. Процедура нахождения такого соответствия называется геокодированием.
Откроем Карту, на которую мы будем помещать наши данные:
- Выполните команду "Файл > Открыть таблицу". Выберите файл "Dcwashs". Нажмите "Открыть".
- Отобразится карта улиц города Вашингтона. Откройте окно Карты на весь экран.
Теперь Вы имеете Карту улиц (Dcwashs) и данные для привязки к этой Карте (Registr).
Для автоматического геокодирования:
- Выполните команду "Таблица > Геокодирование". Появится диалог "Геокодирование".
- Установите следующие режимы в диалоге "Геокодирование":
- Из списка таблиц для геокодирования выберите "Registr".
- Из списка "информация в колонке" выберите "Address".
- Оставьте значение "нет" для режима "в границах". В списке "Искать в таблице" выберите "Dcwashs".
- В списке "объекты из колонки" выберите "Street".
- Чтобы изменить символ и его атрибуты, нажмите кнопку "Символ".
- В диалоге "Стиль символа" выберите стрелку красного цвета и установите размер 18.
- Нажмите OK для возвращения к диалогу "Геокодирование ".
- Нажмите OK, чтобы начать геокодирование.
- Появится диалог, отображающий ход процесса геокодирования. Для каждой записи в базе данных по возможности находится соответствие на сети улиц из таблицы "Dcwashs". При автоматическом геокодировании MapInfo геокодирует каждую запись, для которой найдено соответствие между адресами и улицами. Процесс не приостанавливается даже тогда, когда встречается запись, для которой не найдено соответствие. Записи, для которых соответствие не найдено, мы рассмотрим ниже, когда будем изучать интерактивное геокодирование. По завершении процесса геокодирования отображается общий результат процедуры.
- Нажмите OK.
Теперь мы будем интерактивно геокодировать 6 записей, для которых не было найдено соответствие.
- Выполните команду "Таблица > Геокодирование" снова.
- Установите следующие режимы в диалоге "Геокодирование":
- Из списка таблиц для геокодирования выберите "Registr".
- Из списка "информация в колонке" выберите "Address".
- Из списка "Искать в таблице" выберите "Dcwashs".
- В списке "объекты из колонки" выберите "Street".
- В "Режиме" выберите "Вручную".
- Нажмите OK, чтобы начать процесс.
MapInfo приостановит процесс геокодирования на первой записи, для которой не найдено соответствие, и покажет список альтернативных адресов или диапазоны номеров домов. Нажмите OK для адреса, если Вы считаете, что это соответствие достигнуто (например, если в адресе написано "ул" вместо слова "ул." или "улица"). Обнаружение "ул" вместо "ул." или "пер" вместо "пер." - наиболее часто встречающиеся различия. Поскольку высокая точность в данном случае не важна, выбирайте первое предложенное соответствие.
Отображение данных на Карте
Теперь отобразим клиентов на Карте уличной сети:
- Щелкните на заголовке окна Карты "Dcwashs", чтобы сделать его активным.
- В панели инструментов нажмите кнопку "Управление слоями" .
- В появившемся диалоге в разделе "Слой" нажмите кнопку "Добавить". Откроется диалог "Добавить слои".
- Из списка "Добавить слои" выберите "Registr" и нажмите "Добавить". Слой "Registr" будет помещен под Косметическим слоем. Нажмите OK. Карта улиц перерисуется, и теперь на ней символами-стрелками будут отображены клиенты.
Записи в таблице "Registr" теперь имеют связи по колонке "Address" с улицами в колонке "Street" таблицы "Dcwashs". Благодаря этому Вы видите, где на карте Вашингтона находятся клиенты. Теперь, когда Вы будете делать выборку записей клиентов, основываясь на данных из других колонок, результат будет отображаться географически на Карте.
Предположим, Вы хотите знать, какой клиент представлен конкретным значком. Для этого:
- В панели "Пенал", нажмите кнопку "Информация" .
- Поместите курсор над интересующим Вас символом и щелкните. MapInfo отобразит окно "Информация", содержащее сведения о выбранном клиенте.
Поздравляем, Вы успешно поместили данные на Карту! Выполните команду "Файл > Закрыть все", прежде чем мы перейдем к следующему уроку.