How to generate geojson file ?

37 views (last 30 days)
THOUMY François
THOUMY François on 20 Jan 2020
Hello,
I'd like to generate geojson file from GPS coordinates computed with Matlab.
here is an example of the expected geojson file:
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-1.789,
48.286
],
[
-1.781,
48.283
],
[
-1.776,
48.260
],
]
Using the below Matlab code, I could get correctly the first lines but I can't find how to generate the coordinates with the right syntax in the json file..
data.type='FeatureCollection';
data.features=[];
data.features.type = "Feature";
data.features.properties = "{}";
data.features.geometry.type = "LineString";
%data.features.geometry.coordinates =
saveJSONfile(data, 'test2.json');
Thank for your help
  2 Comments
Carlos Vidal
Carlos Vidal on 21 May 2020
could you finally obtain the geoJSON? If not, I may come back with a solution later. Thank you.
Dmitry Kaplan
Dmitry Kaplan on 11 Sep 2020
I am also interested in this. Would love to avoid a forest of sprintfs.

Sign in to comment.

Answers (1)

Raphaël Nussbaumer
Raphaël Nussbaumer on 31 Jan 2023
Sadly Matlab is not really easy to use with such a popular and common format. Here is my solution for generating square polygon
FC={};
FC.type="FeatureCollection";
FC.features=[];
F={};
F.type='Feature';
F.geometry={};
F.properties={};
F.geometry.type="Polygon";
pos = cat(3,...
loc(:,2)/10 + [0 res res 0 0],...
loc(:,1)/10 + [0 0 res res 0]...
);
res = 0.1;
for i=1:height(loc)
F.geometry.coordinates(1,:,:)= pos(i,:,:);
F.properties.value=0;
FC.features=[FC.features;F];
end
fileID = fopen('grid.geojson','w');
fwrite(fileID,jsonencode(FC));
fclose(fileID)

Products


Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!