Wolfram mathematica listPlot的多个指令
如您所见,我需要为每一行分配不同的指令。 我希望黑色虚线是点(连接->假) 我还不能掌握子列表的分组指令的方法Wolfram mathematica listPlot的多个指令,wolfram-mathematica,styles,plot,mathematica-8,Wolfram Mathematica,Styles,Plot,Mathematica 8,如您所见,我需要为每一行分配不同的指令。 我希望黑色虚线是点(连接->假) 我还不能掌握子列表的分组指令的方法 谢谢你的关注。 你可以考虑单独构建你的情节,并用 Studio来分层。这里有一个例子,希望离目标不太远 daList={{0.059, 0.298, 0.726, 0.735, 1.461, 2.311, 3.315}, {0.05, 0.404,0.664, 0.782, 1.376, 2.328, 3.432}, {0.087, 0.628, 0
谢谢你的关注。
你可以考虑单独构建你的情节,并用<代码> Studio来分层。这里有一个例子,希望离目标不太远
daList={{0.059, 0.298, 0.726, 0.735, 1.461, 2.311, 3.315},
{0.05, 0.404,0.664, 0.782, 1.376, 2.328, 3.432},
{0.087, 0.628, 0.986, 1.187,1.914, 3.481, 4.993},
{0.073, 0.594, 0.975, 1.147, 2.019, 3.417,5.037},
{0.143, 0.821, 1.442, 1.595, 2.983, 4.98, 7.604},
{0.107,0.871, 1.431, 1.684, 2.964, 5.015, 7.394}}
ListPlot[daList,
Joined -> True,
PlotRange -> {{1, 7}, {0, 7}},
PlotStyle -> {{Thick, Lighter[Red, .5]},
{Dashed, Black},
{Thick,Lighter[Red, .3]},
{Dashed, Black},
{Thick,Lighter[Red, .1]},
{Dashed, Black}},
Prolog ->{GrayLevel[0.5], EdgeForm[Thickness[.005]],
Rectangle[{1.01, 0.01}, {6.99, 6.99}]}]
我想我几乎是在模仿海克,但这不是故意的。希望这两个答案都能有所补充
对于这个应用程序,在中有一个更完整的使用和的示例:如果您希望连接其他每个绘图,您可以只设置
连接->{True,False}
,例如
{d1, d2} = Partition[daList, 2]\[Transpose];
lambda = {541, 550, 560, 570, 580, 590, 600};
colors = {Thick, Red~Lighter~#} & /@ {0.5, 0.3, 0.1};
g1 = ListPlot[d1, Joined -> True, PlotStyle -> colors];
g2 = ListPlot[d2, PlotStyle -> {{Black, AbsolutePointSize[5]}}];
Show[{g1, g2}, PlotRange -> {{1, 7}, {0, 7}},
AspectRatio -> 1/GoldenRatio, Frame -> True, FrameStyle -> 20,
FrameTicks -> {{Automatic,
None}, {MapIndexed[{#2[[1]], #} &, lambda], Automatic}},
Prolog -> {GrayLevel[0.5], EdgeForm[Thickness[.005]],
Rectangle[Scaled[{0, 0}], Scaled[{1, 1}]]}, ImageSize -> 600]
产生
编辑
关于你的评论,我想你可以把偶数和奇数分别画出来,并把它们和show结合起来。以你为例:
ListPlot[daList, Joined -> {True, False},
PlotRange -> {{1, 7}, {0, 7}},
PlotStyle -> {{Thick, Lighter[Red, .5]}, {Dashed, Black}, {Thick,
Lighter[Red, .3]}, {Dashed, Black}, {Thick,
Lighter[Red, .1]}, {Dashed, Black}},
Prolog -> {GrayLevel[0.5], EdgeForm[Thickness[.005]],
Rectangle[{1.01, 0.01}, {6.99, 6.99}]}]
作为<代码> ListPlot <代码>的替代,您可以考虑<代码>图形< /代码>
joinedStyle = {Thick, Lighter[Red, #]} & /@ {.5, .3, .1};
pointStyle = Black;
plot1 = ListPlot[daList[[1 ;; ;; 2]], Joined -> True, PlotStyle -> joinedStyle,
PlotRange -> {{1,7},{0,7}}];
plot2 = ListPlot[daList[[2 ;; ;; 2]], Joined -> False, PlotStyle -> pointStyle];
Show[plot1, plot2, PlotRange -> {{1, 7}, {0, 7}},
Prolog -> {GrayLevel[0.5], EdgeForm[Thickness[.005]],
Rectangle[{1.01, 0.01}, {6.99, 6.99}]}]
及
给予
或者,为每个数据集指定不同的符号,如下图所示:
代码:
这篇文章我读了两遍,但我仍然难以理解。你是否可以画一幅你想要的东西的图画?谢谢,对不起;这可能很清楚,但我想得不好。更好吗?我删除了框架标记,我将单独询问这一部分。从本质上说,我希望收紧代码,同时为2个子列表中的一个子列表提供点数!好的,上面的图片是正确的,你只是想要一个更干净的方法?事实上,不,我仍然不明白:“除了2个子列表中的一个有点。”也许我今天没用了。:-)我想海克明白我没能理解的。她的回答有什么遗漏吗?谢谢!问题是我实际上有10*2的曲线要绘制。我希望只有两套指令,一套用于列表中的奇数位置(粗线,颜色变浅),另一套用于偶数(黑色),以奇数表示生存。你觉得这有什么意思吗?太好了!谢谢,有没有建议让灰色框完全适合绘图:-)?@500您是说它的外观与现在不同,还是说它自动适合PlotRange,所以它在其他尺寸下看起来相同?自动适合PlotRange将是理想的!对这个优雅的语法进行一点解释:Red~Lighter~#&/{0.5,0.3,0.1}关于~的使用将非常棒:-),顺便说一下,你解决了我要问的一个关于AspectRatio的问题@Wizard先生:鉴于我的编辑是在你的帖子之后进行的,我想我是无意中抄袭了你,而不是相反。我对500的评论做出了反应,完全没有听到你的答案。
tdata = MapIndexed[{#2[[1]], #1} &, #] & /@ daList;
Graphics[
{ GrayLevel[0.7], EdgeForm[AbsoluteThickness[2]],
Rectangle[{1.02, 0.05}, {7.2, 7.75}],
(*lines*)
AbsoluteThickness[2],
Transpose[{Lighter[Red, #] & /@ {0.5, 0.3, 0.1},
Line@tdata[[#]] & /@ {1, 3, 5}}],
(*points*)
Black, PointSize[0.016],
Point@tdata[[#]] & /@ {2, 4, 6}
}, Axes -> True, PlotRange -> {{1, 7.2}, {0, 7.8}},
AspectRatio -> 1/GoldenRatio]
Graphics[
{ GrayLevel[.7], EdgeForm[AbsoluteThickness[2]],
Rectangle[{1.02, 0.05}, {7.2, 7.75}],
(*lines*)
AbsoluteThickness[2],
Transpose[{Lighter[Red, #] & /@ {0.5, 0.3, 0.1},
Line@tdata[[#]] & /@ {1, 3, 5}}],
(*points*)
Inset[Graphics[{EdgeForm[Black], White, Rectangle[]},
ImageSize -> 8], #] & /@ tdata[[2]],
Inset[Graphics[{EdgeForm[Black], White,
Polygon[{{1, 0}, {0, Sqrt[3]}, {-1, 0}}]},
ImageSize -> 10], #] & /@ tdata[[4]],
Inset[Graphics[{ EdgeForm[Black], White, Disk[]},
ImageSize -> 9], #] & /@ tdata[[6]]
}, Axes -> True, PlotRange -> {{1, 7.2}, {0, 7.8}},
AspectRatio -> 1/GoldenRatio]