title: Matlab: mapshow and non-string geometry field
body: <p>I am creating a table to store points, then transforming the table to a struct and using mapshow() to plot it.</p>
  
  <p>The following error is thrown:</p>
  
  <blockquote>
    <p>An element of geographic data structure S has a non-string 'Geometry' field.</p>
  </blockquote>
  
  <p>Even if the class() function returns string.</p>
  
  <p>Am I missing something stupid or where is my error? Thanks to everyone!</p>
  
  <pre><code>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
  </code></pre>
  
  <p>I am currently using Matlab R2019a prerelease.</p>