How to generate geojson file ?

36 vues (au cours des 30 derniers jours)
THOUMY François
THOUMY François le 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 commentaires
Carlos Vidal
Carlos Vidal le 21 Mai 2020
could you finally obtain the geoJSON? If not, I may come back with a solution later. Thank you.
Dmitry Kaplan
Dmitry Kaplan le 11 Sep 2020
I am also interested in this. Would love to avoid a forest of sprintfs.

Connectez-vous pour commenter.

Réponses (1)

Raphaël Nussbaumer
Raphaël Nussbaumer le 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)

Produits


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by