Plot line with points at given distance

Hi all,
I need to find a way to plot markers along a line (river course; attached file) with a given distance, e.g. each 500m.
Is there a way to extract these values. The find function does not work in this situation since I only get an empty double column vector. I've used the TopoToolbox before, so the dataset is a STREAMobj which might be diffucult to read for one who hasn't the toolbox installed.
I tried to plot new points with spacing, but since the river is not smoothed and also should not be, point spacing starts and every new edge.
plot(Facet1)
hold on
spacing = 500;
plot(Facet1(1:spacing:end,1),'ro')
In advance thanks for your help.

4 Kommentare

Is this an accurate representation of your data?
S = load('NEU.mat')
Warning: Variable 'NEU' originally saved as a STREAMobj cannot be instantiated as an object and will be read in as a uint32.
S = struct with fields:
NEU: [6×1 uint32]
S.NEU
ans = 6×1
3707764736 2 1 1 1 3
Steven Lord
Steven Lord am 18 Feb. 2022
The MATLAB that is used to run code in MATLAB Answers doesn't have TopoToolbox installed, so it doesn't know how to recreate a STREAMobj object that was created using that toolbox and saved in the MAT-file.
Voss
Voss am 18 Feb. 2022
Ah, I see. I thought all the toolboxes were available here, so that's good to know.
Ricco Blass
Ricco Blass am 19 Feb. 2022
Yes I updated my question. Should have mentioned that before.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Wolfgang Schwanghart
Wolfgang Schwanghart am 25 Feb. 2022

0 Stimmen

Since you are working with TopoToolbox, you might want to use the function getlocation. If you have a STREAMobj S, then you can retrieve points at a distance of 500 m as follows:
DEM = GRIDobj('srtm_bigtujunga30m_utm11.tif');
FD = FLOWobj(DEM);
S = STREAMobj(FD,'minarea',1000);
S = klargestconncomps(trunk(S));
[x,y,val] = getlocation(S,[0:500:max(S.distance)]);
plot(S)
hold on
plot(x,y,'ok','MarkerFaceColor',[.5 .5 .5])
axis image

1 Kommentar

Ricco Blass
Ricco Blass am 26 Feb. 2022
That's exactely what I was looking for.
Thanks a lot!!

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by