How to generate geojson file ?

36 次查看(过去 30 天)
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 个评论
Carlos Vidal
Carlos Vidal 2020-5-21
could you finally obtain the geoJSON? If not, I may come back with a solution later. Thank you.
Dmitry Kaplan
Dmitry Kaplan 2020-9-11
I am also interested in this. Would love to avoid a forest of sprintfs.

请先登录,再进行评论。

回答(1 个)

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

标签

产品


版本

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by