For loop within GeoGraphics
up vote
2
down vote
favorite
I'm trying to plot a map with a list of destinations as Disks.
I first input the cities into a list such as:
destinations = {GeoPosition[New York City],
GeoPosition[Mumbai],
...}
where "New York City" is input using the Ctrl+= method to access interpreter and specify it as a city.
Then I have something summarizing to:
GeoGraphics[{
Black,
Disk[For[i=1, i<Length[destinations]+1,i++,destinations[[i]],1],
...
Disk[city,1],
},
...
]
This outputs a map with my desired projection settings such as background, range, and the single disk that I specified separately like:
Disk[city,1],
I have also tried to put the Disk
function inside a for loop like:
For[i=1, i<Length[destinations]+1,i++,Disk[destinations[[i]],1]],
It's not an incorrect indexing of the destinations list either, because
For[i=1, i<Length[destinations]+1,i++,Print[destinations[[i]]]]
outputs the correct amount of cities, whereas
For[i=0, i<Length[destinations],i++,Print[destinations[[i]]]]
outputs a first item of "List" and doesn't print the last city.
Is it possible to use for loops within a GeoGraphics
function, or would I be required to add a Disk
function line for each item I would like to plot instead of iterating through a list?
Thanks in advance for the help!
list-manipulation geographics
New contributor
add a comment |
up vote
2
down vote
favorite
I'm trying to plot a map with a list of destinations as Disks.
I first input the cities into a list such as:
destinations = {GeoPosition[New York City],
GeoPosition[Mumbai],
...}
where "New York City" is input using the Ctrl+= method to access interpreter and specify it as a city.
Then I have something summarizing to:
GeoGraphics[{
Black,
Disk[For[i=1, i<Length[destinations]+1,i++,destinations[[i]],1],
...
Disk[city,1],
},
...
]
This outputs a map with my desired projection settings such as background, range, and the single disk that I specified separately like:
Disk[city,1],
I have also tried to put the Disk
function inside a for loop like:
For[i=1, i<Length[destinations]+1,i++,Disk[destinations[[i]],1]],
It's not an incorrect indexing of the destinations list either, because
For[i=1, i<Length[destinations]+1,i++,Print[destinations[[i]]]]
outputs the correct amount of cities, whereas
For[i=0, i<Length[destinations],i++,Print[destinations[[i]]]]
outputs a first item of "List" and doesn't print the last city.
Is it possible to use for loops within a GeoGraphics
function, or would I be required to add a Disk
function line for each item I would like to plot instead of iterating through a list?
Thanks in advance for the help!
list-manipulation geographics
New contributor
add a comment |
up vote
2
down vote
favorite
up vote
2
down vote
favorite
I'm trying to plot a map with a list of destinations as Disks.
I first input the cities into a list such as:
destinations = {GeoPosition[New York City],
GeoPosition[Mumbai],
...}
where "New York City" is input using the Ctrl+= method to access interpreter and specify it as a city.
Then I have something summarizing to:
GeoGraphics[{
Black,
Disk[For[i=1, i<Length[destinations]+1,i++,destinations[[i]],1],
...
Disk[city,1],
},
...
]
This outputs a map with my desired projection settings such as background, range, and the single disk that I specified separately like:
Disk[city,1],
I have also tried to put the Disk
function inside a for loop like:
For[i=1, i<Length[destinations]+1,i++,Disk[destinations[[i]],1]],
It's not an incorrect indexing of the destinations list either, because
For[i=1, i<Length[destinations]+1,i++,Print[destinations[[i]]]]
outputs the correct amount of cities, whereas
For[i=0, i<Length[destinations],i++,Print[destinations[[i]]]]
outputs a first item of "List" and doesn't print the last city.
Is it possible to use for loops within a GeoGraphics
function, or would I be required to add a Disk
function line for each item I would like to plot instead of iterating through a list?
Thanks in advance for the help!
list-manipulation geographics
New contributor
I'm trying to plot a map with a list of destinations as Disks.
I first input the cities into a list such as:
destinations = {GeoPosition[New York City],
GeoPosition[Mumbai],
...}
where "New York City" is input using the Ctrl+= method to access interpreter and specify it as a city.
Then I have something summarizing to:
GeoGraphics[{
Black,
Disk[For[i=1, i<Length[destinations]+1,i++,destinations[[i]],1],
...
Disk[city,1],
},
...
]
This outputs a map with my desired projection settings such as background, range, and the single disk that I specified separately like:
Disk[city,1],
I have also tried to put the Disk
function inside a for loop like:
For[i=1, i<Length[destinations]+1,i++,Disk[destinations[[i]],1]],
It's not an incorrect indexing of the destinations list either, because
For[i=1, i<Length[destinations]+1,i++,Print[destinations[[i]]]]
outputs the correct amount of cities, whereas
For[i=0, i<Length[destinations],i++,Print[destinations[[i]]]]
outputs a first item of "List" and doesn't print the last city.
Is it possible to use for loops within a GeoGraphics
function, or would I be required to add a Disk
function line for each item I would like to plot instead of iterating through a list?
Thanks in advance for the help!
list-manipulation geographics
list-manipulation geographics
New contributor
New contributor
edited 2 days ago
kglr
174k8196401
174k8196401
New contributor
asked 2 days ago
Reedinationer
111
111
New contributor
New contributor
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
5
down vote
You don't need For
loops.
Instead you can Map
Disk
on destinations
; that is, use Disk /@ destionations
(Disk[#, 5]& /@ destionations
if you want a radius of 5
instead of the default radius 1
).
cities = {Entity["City", {"NewYork", "NewYork", "UnitedStates"}],
Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}],
Entity["City", {"Bombay", "Maharashtra", "India"}],
Entity["City", {"Delhi", "Delhi", "India"}]};
destinations = GeoPosition /@ cities;
GeoGraphics[{Black, Disk /@ destinations}]
Notes: If you have to use a For
loop you can do:
disks = {};
For[i = 1, i <= Length[destinations], i++, AppendTo[disks, Disk[destinations[[i]]]]];
GeoGraphics[{Black, disks}]
same picture
Alternatively, you can use Table
:
Table[Disk[i], {i, destinations}] == disks
True
and if you have to use a For
loop inside GeoGraphics
GeoGraphics[{Black, disks = {};
For[i = 1, i <= Length[destinations], i++,
AppendTo[disks, Disk[destinations[[i]]]]]; disks}]
same picture
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
5
down vote
You don't need For
loops.
Instead you can Map
Disk
on destinations
; that is, use Disk /@ destionations
(Disk[#, 5]& /@ destionations
if you want a radius of 5
instead of the default radius 1
).
cities = {Entity["City", {"NewYork", "NewYork", "UnitedStates"}],
Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}],
Entity["City", {"Bombay", "Maharashtra", "India"}],
Entity["City", {"Delhi", "Delhi", "India"}]};
destinations = GeoPosition /@ cities;
GeoGraphics[{Black, Disk /@ destinations}]
Notes: If you have to use a For
loop you can do:
disks = {};
For[i = 1, i <= Length[destinations], i++, AppendTo[disks, Disk[destinations[[i]]]]];
GeoGraphics[{Black, disks}]
same picture
Alternatively, you can use Table
:
Table[Disk[i], {i, destinations}] == disks
True
and if you have to use a For
loop inside GeoGraphics
GeoGraphics[{Black, disks = {};
For[i = 1, i <= Length[destinations], i++,
AppendTo[disks, Disk[destinations[[i]]]]]; disks}]
same picture
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
add a comment |
up vote
5
down vote
You don't need For
loops.
Instead you can Map
Disk
on destinations
; that is, use Disk /@ destionations
(Disk[#, 5]& /@ destionations
if you want a radius of 5
instead of the default radius 1
).
cities = {Entity["City", {"NewYork", "NewYork", "UnitedStates"}],
Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}],
Entity["City", {"Bombay", "Maharashtra", "India"}],
Entity["City", {"Delhi", "Delhi", "India"}]};
destinations = GeoPosition /@ cities;
GeoGraphics[{Black, Disk /@ destinations}]
Notes: If you have to use a For
loop you can do:
disks = {};
For[i = 1, i <= Length[destinations], i++, AppendTo[disks, Disk[destinations[[i]]]]];
GeoGraphics[{Black, disks}]
same picture
Alternatively, you can use Table
:
Table[Disk[i], {i, destinations}] == disks
True
and if you have to use a For
loop inside GeoGraphics
GeoGraphics[{Black, disks = {};
For[i = 1, i <= Length[destinations], i++,
AppendTo[disks, Disk[destinations[[i]]]]]; disks}]
same picture
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
add a comment |
up vote
5
down vote
up vote
5
down vote
You don't need For
loops.
Instead you can Map
Disk
on destinations
; that is, use Disk /@ destionations
(Disk[#, 5]& /@ destionations
if you want a radius of 5
instead of the default radius 1
).
cities = {Entity["City", {"NewYork", "NewYork", "UnitedStates"}],
Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}],
Entity["City", {"Bombay", "Maharashtra", "India"}],
Entity["City", {"Delhi", "Delhi", "India"}]};
destinations = GeoPosition /@ cities;
GeoGraphics[{Black, Disk /@ destinations}]
Notes: If you have to use a For
loop you can do:
disks = {};
For[i = 1, i <= Length[destinations], i++, AppendTo[disks, Disk[destinations[[i]]]]];
GeoGraphics[{Black, disks}]
same picture
Alternatively, you can use Table
:
Table[Disk[i], {i, destinations}] == disks
True
and if you have to use a For
loop inside GeoGraphics
GeoGraphics[{Black, disks = {};
For[i = 1, i <= Length[destinations], i++,
AppendTo[disks, Disk[destinations[[i]]]]]; disks}]
same picture
You don't need For
loops.
Instead you can Map
Disk
on destinations
; that is, use Disk /@ destionations
(Disk[#, 5]& /@ destionations
if you want a radius of 5
instead of the default radius 1
).
cities = {Entity["City", {"NewYork", "NewYork", "UnitedStates"}],
Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}],
Entity["City", {"Bombay", "Maharashtra", "India"}],
Entity["City", {"Delhi", "Delhi", "India"}]};
destinations = GeoPosition /@ cities;
GeoGraphics[{Black, Disk /@ destinations}]
Notes: If you have to use a For
loop you can do:
disks = {};
For[i = 1, i <= Length[destinations], i++, AppendTo[disks, Disk[destinations[[i]]]]];
GeoGraphics[{Black, disks}]
same picture
Alternatively, you can use Table
:
Table[Disk[i], {i, destinations}] == disks
True
and if you have to use a For
loop inside GeoGraphics
GeoGraphics[{Black, disks = {};
For[i = 1, i <= Length[destinations], i++,
AppendTo[disks, Disk[destinations[[i]]]]]; disks}]
same picture
edited 2 days ago
answered 2 days ago
kglr
174k8196401
174k8196401
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
add a comment |
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
Yes, this works perfectly thank you!
– Reedinationer
2 days ago
add a comment |
Reedinationer is a new contributor. Be nice, and check out our Code of Conduct.
Reedinationer is a new contributor. Be nice, and check out our Code of Conduct.
Reedinationer is a new contributor. Be nice, and check out our Code of Conduct.
Reedinationer is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Mathematica Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f186998%2ffor-loop-within-geographics%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown