我正在创建一个表来存储点,然后将表转换为结构,并使用mapshow()来绘制它。
引发以下错误:
地理数据结构的元素具有非字符串“geometry”字段。
即使class()函数返回字符串。
我错过了什么愚蠢的东西还是我的错误在哪里?谢谢大家!
points = table('Size', [0 4], ...
'VariableNames', {'Geometry', 'X', 'Y', 'Type'}, ...
'VariableTypes', {'string', 'double', 'double', 'string'});
newPoint.Geometry = 'Point';
newPoint.X = 20;
newPoint.Y = 50;
newPoint.Type = 'Source';
points = [points; struct2table(newPoint)];
pointsSymbol = makesymbolspec('Point', {'Type', 'Source', 'Marker', '^', 'Color', [0 0 1], 'MarkerSize', 10}, ...
{'Type', 'Sink', 'Marker', 'v', 'Color', [1 0 0], 'MarkerSize', 10});
pointsStruct = table2struct(points);
class(pointsStruct.Geometry) % 'string'
mapshow(pointsStruct, 'SymbolSpec', pointsSymbol); % error
我目前使用的是matlab r2019a预发行版。