2011年12月14日 星期三

Re: [問題] ListLinePlot的PlotLegend

作者: chungyuandye (養花種魚數月亮賞星星) 看板: Mathematica
標題: Re: [問題] ListLinePlot的PlotLegend
時間: Wed Dec 14 20:20:04 2011

※ 引述《enunion (珍惜)》之銘言:
: 請問有人知道再用ListLinePlot時
: 怎麼弄出一個方塊上面標示什麼顏色代表什麼意思
: 我試過PlotLegend
: 但是沒用
: 查ListLinePlot的選項也沒有PlotLegend
: 請問還有什麼方法嗎?
: 感謝~

時間很趕的話,湊合用一下∼

mylegend[plot_Graphics,legend_List]:=
Block[{p=plot,l=legend,colortemp,color,Opacitytemp,temp},
(*擷取色彩*)
colortemp=Cases[p,Hue[a_,b_,c_]:>Hue[a,b,c],Infinity];
color=colortemp[[-Length@l;;-1]];

(*配對圖例及色彩*)
temp={color[[#]],l[[#]]}&/@Range[Length@color];

(*建立圖例*)

Labeled[p,
Grid[{Graphics[{#[[1]],Thickness[0.1],Opacity[0.75],
Line[{{0,0},{1,0}}]},
ImageSize->{24,24},AspectRatio->8/24,
ImagePadding->0],#[[2]]}&/@temp],

(*指定圖例位置*)
{{Right,Top}}]
]

mylegend[ListLinePlot[Table[Accumulate[RandomReal[{-1,1},250]],{3}],
Filling->0],{"a","b","c"}]

mylegend[ListLinePlot[
Table[Accumulate[RandomReal[{-1,1},250]],{10}]],
CharacterRange["a","z"][[1;;10]]]

--
養花種魚數月亮賞星星

http://chungyuandye.twbbs.org


--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.173.134.231
推 enunion:真的可以用耶!!好強@@ 真的很感謝您和harry901大!!  12/14 21:34
推 enunion:可是標示的顏色好像怪怪的 紅色的線他會標成紫色  12/14 21:41
→ enunion:亮綠色的線會標成暗綠色 這有辦法解決嗎?  12/14 21:42
→ chungyuandye:Opacity[0.75]->Opacity[1]  12/14 21:45
→ harry901:這個太強了  12/14 21:48
推 enunion:還是一樣耶 紅色還是會標成紫色  12/14 21:51

沒有留言:

張貼留言