绘制不同的图例的问题
mathematica吧
全部回复
仅看楼主
level 5
作为MMA的新手,写论文遇到了画图的问题,很久没想到解决的办法,特来请教。
我想只把下面的粗线改成 双点划线 或者 那种“*-*-*”(*或者△都行)这样的线,其他的线型不动;如果只改动PlotStyle 里面的参数,可行吗?请问该如何操作?
如果上述方法不行,整体该怎么改?感谢帮助,人生第一篇论文,谢谢!
绘图代码如下:
Plot[{p2[0, 0], p2[1, 1], p2[2, 2], p2[3, 3], p2[4, 4]}, {r, 0, 1},
PlotStyle -> {{Black, Thin}, {Black, Thick}, {Black, Dotted}, {Black,
DotDashed}, {Black, Dashed}}, PlotRange -> {0, 2}, Frame -> True,
FrameLabel -> {Style["\!\(\*
StyleBox[\"r\",\nFontSlant->\"Italic\"]\)", 15], Style["\!\(\*
StyleBox[SuperscriptBox[\"\[EmptyUpTriangle]p\", \"2\"],\nFontSlant\
->\"Italic\"]\)", 15]}, PlotLegends -> Placed[{"\!\(\*
StyleBox[\"m\",\nFontSlant->\"Italic\"]\)=0", "\!\(\*
StyleBox[\"m\",\nFontSlant->\"Italic\"]\)=1", "\!\(\*
StyleBox[\"m\",\nFontSlant->\"Italic\"]\)=2", "\!\(\*
StyleBox[\"m\",\nFontSlant->\"Italic\"]\)=3", "\!\(\*
StyleBox[\"m\",\nFontSlant->\"Italic\"]\)=4"}, Right]]
2017年09月08日 17点09分 1
level 6
plotstyle,你查阅一下这个函数的说明即可
2017年09月08日 22点09分 2
没找到我想要的方案,能详细帮忙吗?时间很紧
2017年09月09日 17点09分
level 10
PlotTheme -> "Monochrome"
2017年09月09日 00点09分 3
换线型,不是颜色,里面线型直接的好像就四种,不知道怎么找带“*”的。
2017年09月09日 17点09分
@时空的枣树 我实在没什么好办法!
2017年09月09日 22点09分
level 7
把Thick换成Dashing[{.02, .01, .01, .01}]
查一下Dashing的文档可以画出任意的点划线
2017年09月10日 03点09分 4
学习了,厉害。这个函数我之前还没有注意过。
2017年09月10日 06点09分
太谢谢了,老哥!
2017年09月10日 15点09分
level 7
对于想画出更多花样的线条,我能想到的方案只有把函数转化为点集,用ListPlot画图,然后用PlotMarkers指定标记,但是要想画出足够光滑的曲线就要取足够多的点,而PlotMarkers的位置也是由点决定的,二者就不太好平衡,只能算一个比较dirty的解决方案吧。
data=Table[{i,j E^-(10i)},{j,1,5},{i,0,1,.02}];
ListPlot[data,Joined->True,PlotMarkers->{"",{"\[FilledUpTriangle]",12},"","",""},PlotStyle->{{Black,Thin},{Black,Dashing[{0.07,0.03}]},{Black,Dotted},{Black,DotDashed},{Black,Dashed}}]
(后面的参数和
lz
都是一样的)
2017年09月10日 04点09分 5
非常感谢
2017年09月13日 16点09分
画两幅再Show在一起就行了,参看7楼。
2017年10月07日 03点10分
吧务
level 15
Plot画一幅ListPlot画一幅就行了,注意标签部分要强制指定LineLegend:
style = {{Black, Thin}, {Black, Dashing[{0.07, 0.03}]}, {Black, Dotted}, {Black,
DotDashed}, {Black, Dashed}};
data = Table[{i, j E^-(10 i)}, {j, 1, 5}, {i, 0, 1, .2}];
ListPlot[data, PlotMarkers -> {"", {"\[FilledUpTriangle]", 12}, "", "", ""},
PlotStyle -> style, PlotLegends -> LineLegend@Automatic, PlotRange -> All]~Show~
Plot[Table[j E^-(10 i), {j, 1, 5}] // Evaluate, {i, 0, 1}, PlotStyle -> style,
PlotRange -> All]
我只调了需要展示的部分,其他的按你自己的调就行了。
2017年10月07日 03点10分 7
谢谢吧主啊[呵呵]
2017年11月25日 16点11分
1