Спецификация атрибута от географической структуры данных
attribspec = makeattribspec(S)
attribspec = makeattribspec(S) создает спецификацию атрибута из S, подходящего для использования с kmlwrite. S может быть любым следующим:
вектор геоточки
геосформируйте вектор с Геометрией 'point' и никакими динамическими свойствами вершины
геоstruct с 'Lat' и 'Lon' координирует поля
Возвращаемое значение, attribspec, является скалярной структурой MATLAB® с двумя уровнями. Верхний уровень состоит из поля для каждого атрибута в S. Каждое из этих полей содержит скалярную структуру с фиксированной парой полей:
AttributeLabel | Вектор символов, который соответствует имени поля атрибута в S. С kmlwrite вектор символов используется, чтобы маркировать атрибут в первом столбце HTML-таблицы. Вектор символов может быть изменен до вызова kmlwrite. Вы можете изменить метку атрибута, например, потому что вы хотите использовать пробелы в своей HTML-таблице, но имена полей атрибута в S должны быть допустимыми именами переменной MATLAB и не могут иметь самих пробелов. |
Format | Спецификация символа формата sprintf, которая преобразовывает значение атрибута в вектор символов. |
Импортируйте файл форм, представляющий цунами (приливная волна) события, о которых сообщают между 1 950 и 2006 и теговый географически исходным местоположением, и создайте спецификацию атрибута по умолчанию (который включает все атрибуты файла форм):
s = shaperead('tsunamis', 'UseGeoCoords', true);
attribspec = makeattribspec(s)
attribspec =
Year: [1x1 struct]
Month: [1x1 struct]
Day: [1x1 struct]
Hour: [1x1 struct]
Minute: [1x1 struct]
Second: [1x1 struct]
Val_Code: [1x1 struct]
Validity: [1x1 struct]
Cause_Code: [1x1 struct]
Cause: [1x1 struct]
Eq_Mag: [1x1 struct]
Country: [1x1 struct]
Location: [1x1 struct]
Max_Height: [1x1 struct]
Iida_Mag: [1x1 struct]
Intensity: [1x1 struct]
Num_Deaths: [1x1 struct]
Desc_Deaths: [1x1 struct]Измените спецификацию атрибута к
Отобразите только атрибуты Max_Height, Cause, Year, Location и Country
Переименуйте поле Max_Height к Maximum Height
Отобразитесь метка каждого атрибута полужирным вводят
Обнулите количество десятичных разрядов, используемых, чтобы отобразить Year
Добавьте “Метры” в формат Height, учитывая независимое знание этих модулей
desiredAttributes = ...
{'Max_Height', 'Cause', 'Year', 'Location', 'Country'};
allAttributes = fieldnames(attribspec);
attributes = setdiff(allAttributes, desiredAttributes);
attribspec = rmfield(attribspec, attributes);
attribspec.Max_Height.AttributeLabel = '<b>Maximum Height</b>';
attribspec.Max_Height.Format = '%.1f Meters';
attribspec.Cause.AttributeLabel = '<b>Cause</b>';
attribspec.Year.AttributeLabel = '<b>Year</b>';
attribspec.Year.Format = '%.0f';
attribspec.Location.AttributeLabel = '<b>Location</b>';
attribspec.Country.AttributeLabel = '<b>Country</b>';Используйте спецификацию атрибута, чтобы экспортировать выбранные атрибуты и исходные местоположения к файлу KML как Описание:
filename = 'tsunami.kml';
kmlwrite(filename, s, 'Description', attribspec, ...
'Name', {s.Location})Самый легкий способ создать спецификацию атрибута состоит в том, чтобы создать один, с помощью makeattribspec, и затем изменить вывод, удалив атрибуты или изменив поле Format для одного или нескольких атрибутов.
Можно использовать спецификацию атрибута с kmlwrite как значение параметра Description. kmlwrite создает HTML-таблицу, которая состоит из метки для атрибута в первом столбце и значении атрибута во втором столбце. Можно изменить спецификацию атрибута, чтобы управлять, какие поля атрибута записаны в HTML-таблицу и их формат.