Mapping Streamplot into graphics without arrows
Clash Royale CLAN TAG#URR8PPP
up vote
5
down vote
favorite
This question follows from the example below
Mapping StreamPlot onto spherical surfaces
When I'm trying to remove the arrows I cannot get the 3d graphics:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, -ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue,
StreamScale -> None, ImageSize -> 200];
sp3d = Graphics3D[
sp[[1]] /.
Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x],
Cos[y]], ImageSize -> 200];
Row[sp, sp3d, Spacer[5]]
The result is below. Any idea how to get the 3d graphics without the arrows?
plotting graphics3d
add a comment |Â
up vote
5
down vote
favorite
This question follows from the example below
Mapping StreamPlot onto spherical surfaces
When I'm trying to remove the arrows I cannot get the 3d graphics:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, -ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue,
StreamScale -> None, ImageSize -> 200];
sp3d = Graphics3D[
sp[[1]] /.
Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x],
Cos[y]], ImageSize -> 200];
Row[sp, sp3d, Spacer[5]]
The result is below. Any idea how to get the 3d graphics without the arrows?
plotting graphics3d
add a comment |Â
up vote
5
down vote
favorite
up vote
5
down vote
favorite
This question follows from the example below
Mapping StreamPlot onto spherical surfaces
When I'm trying to remove the arrows I cannot get the 3d graphics:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, -ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue,
StreamScale -> None, ImageSize -> 200];
sp3d = Graphics3D[
sp[[1]] /.
Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x],
Cos[y]], ImageSize -> 200];
Row[sp, sp3d, Spacer[5]]
The result is below. Any idea how to get the 3d graphics without the arrows?
plotting graphics3d
This question follows from the example below
Mapping StreamPlot onto spherical surfaces
When I'm trying to remove the arrows I cannot get the 3d graphics:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, -ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue,
StreamScale -> None, ImageSize -> 200];
sp3d = Graphics3D[
sp[[1]] /.
Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x],
Cos[y]], ImageSize -> 200];
Row[sp, sp3d, Spacer[5]]
The result is below. Any idea how to get the 3d graphics without the arrows?
plotting graphics3d
plotting graphics3d
edited Aug 23 at 21:33
Jason B.
46.2k382177
46.2k382177
asked Aug 23 at 19:42
jarhead
689413
689413
add a comment |Â
add a comment |Â
2 Answers
2
active
oldest
votes
up vote
2
down vote
accepted
You can also post-process the graphics objects sp
and sp3d
from the accepted answer in the the linked q/a (1) to change Arrow
s to Line
s or (2) to change the Arrowheads
directive to Arrowheads[0]
:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, - ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue, ImageSize -> 200];
sp3d = Graphics3D[sp[[1]] /. Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x], Cos[y]],
ImageSize -> 200];
Row[sp, sp3d /. Arrow -> Line, Spacer[5]]
Row[sp, sp3d /. Arrowheads[_] :> Arrowheads[0], Spacer[5]]
same picture
add a comment |Â
up vote
4
down vote
The sp
output includes a GraphicsComplex
, so the arguments of the primitives are indices into the GraphicsComplex
and not coordinates. Also, your StreamPlot
uses Line
primitives instead of Arrow
primitives. So, a corrected version would be:
Graphics3D[
ReplaceAll[
Normal[sp][[1]],
Line[z_]:>Line[z/.x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]]
]
]
Note that Normal
modifies the colors, so an alternative is to transform the GraphicsComplex
:
Graphics3D[
ReplaceAll[
sp[[1]],
x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]
],
ImageSize->400
]
The latter method is identical to @Jason's now deleted answer.
add a comment |Â
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
accepted
You can also post-process the graphics objects sp
and sp3d
from the accepted answer in the the linked q/a (1) to change Arrow
s to Line
s or (2) to change the Arrowheads
directive to Arrowheads[0]
:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, - ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue, ImageSize -> 200];
sp3d = Graphics3D[sp[[1]] /. Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x], Cos[y]],
ImageSize -> 200];
Row[sp, sp3d /. Arrow -> Line, Spacer[5]]
Row[sp, sp3d /. Arrowheads[_] :> Arrowheads[0], Spacer[5]]
same picture
add a comment |Â
up vote
2
down vote
accepted
You can also post-process the graphics objects sp
and sp3d
from the accepted answer in the the linked q/a (1) to change Arrow
s to Line
s or (2) to change the Arrowheads
directive to Arrowheads[0]
:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, - ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue, ImageSize -> 200];
sp3d = Graphics3D[sp[[1]] /. Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x], Cos[y]],
ImageSize -> 200];
Row[sp, sp3d /. Arrow -> Line, Spacer[5]]
Row[sp, sp3d /. Arrowheads[_] :> Arrowheads[0], Spacer[5]]
same picture
add a comment |Â
up vote
2
down vote
accepted
up vote
2
down vote
accepted
You can also post-process the graphics objects sp
and sp3d
from the accepted answer in the the linked q/a (1) to change Arrow
s to Line
s or (2) to change the Arrowheads
directive to Arrowheads[0]
:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, - ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue, ImageSize -> 200];
sp3d = Graphics3D[sp[[1]] /. Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x], Cos[y]],
ImageSize -> 200];
Row[sp, sp3d /. Arrow -> Line, Spacer[5]]
Row[sp, sp3d /. Arrowheads[_] :> Arrowheads[0], Spacer[5]]
same picture
You can also post-process the graphics objects sp
and sp3d
from the accepted answer in the the linked q/a (1) to change Arrow
s to Line
s or (2) to change the Arrowheads
directive to Arrowheads[0]
:
sp = StreamPlot[Cot[ø] Cos[ÃÂ], -Sin[ÃÂ], ÃÂ, - ÃÂ, ÃÂ, ø, 0, ÃÂ,
StreamColorFunction -> Hue, ImageSize -> 200];
sp3d = Graphics3D[sp[[1]] /. Arrow[z_] :>
Arrow[z /. x_Real, y_Real :> Cos[x] Sin[y], Sin[y] Sin[x], Cos[y]],
ImageSize -> 200];
Row[sp, sp3d /. Arrow -> Line, Spacer[5]]
Row[sp, sp3d /. Arrowheads[_] :> Arrowheads[0], Spacer[5]]
same picture
edited Aug 24 at 0:56
answered Aug 24 at 0:41
kglr
161k8185384
161k8185384
add a comment |Â
add a comment |Â
up vote
4
down vote
The sp
output includes a GraphicsComplex
, so the arguments of the primitives are indices into the GraphicsComplex
and not coordinates. Also, your StreamPlot
uses Line
primitives instead of Arrow
primitives. So, a corrected version would be:
Graphics3D[
ReplaceAll[
Normal[sp][[1]],
Line[z_]:>Line[z/.x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]]
]
]
Note that Normal
modifies the colors, so an alternative is to transform the GraphicsComplex
:
Graphics3D[
ReplaceAll[
sp[[1]],
x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]
],
ImageSize->400
]
The latter method is identical to @Jason's now deleted answer.
add a comment |Â
up vote
4
down vote
The sp
output includes a GraphicsComplex
, so the arguments of the primitives are indices into the GraphicsComplex
and not coordinates. Also, your StreamPlot
uses Line
primitives instead of Arrow
primitives. So, a corrected version would be:
Graphics3D[
ReplaceAll[
Normal[sp][[1]],
Line[z_]:>Line[z/.x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]]
]
]
Note that Normal
modifies the colors, so an alternative is to transform the GraphicsComplex
:
Graphics3D[
ReplaceAll[
sp[[1]],
x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]
],
ImageSize->400
]
The latter method is identical to @Jason's now deleted answer.
add a comment |Â
up vote
4
down vote
up vote
4
down vote
The sp
output includes a GraphicsComplex
, so the arguments of the primitives are indices into the GraphicsComplex
and not coordinates. Also, your StreamPlot
uses Line
primitives instead of Arrow
primitives. So, a corrected version would be:
Graphics3D[
ReplaceAll[
Normal[sp][[1]],
Line[z_]:>Line[z/.x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]]
]
]
Note that Normal
modifies the colors, so an alternative is to transform the GraphicsComplex
:
Graphics3D[
ReplaceAll[
sp[[1]],
x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]
],
ImageSize->400
]
The latter method is identical to @Jason's now deleted answer.
The sp
output includes a GraphicsComplex
, so the arguments of the primitives are indices into the GraphicsComplex
and not coordinates. Also, your StreamPlot
uses Line
primitives instead of Arrow
primitives. So, a corrected version would be:
Graphics3D[
ReplaceAll[
Normal[sp][[1]],
Line[z_]:>Line[z/.x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]]
]
]
Note that Normal
modifies the colors, so an alternative is to transform the GraphicsComplex
:
Graphics3D[
ReplaceAll[
sp[[1]],
x_Real,y_Real:>Cos[x] Sin[y],Sin[y] Sin[x],Cos[y]
],
ImageSize->400
]
The latter method is identical to @Jason's now deleted answer.
edited Aug 24 at 4:09
answered Aug 23 at 21:00
Carl Woll
58k274150
58k274150
add a comment |Â
add a comment |Â
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
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f180535%2fmapping-streamplot-into-graphics-without-arrows%23new-answer', 'question_page');
);
Post as a guest
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
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
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