타임 라인 레이아웃과 라벨의 배치
고대 로마 시대 유명인의 타임 라인을 생성합니다.
In[1]:=
romanticerapeople =
DeleteCases[
EntityValue[
Entity["HistoricalPeriod", "RomanticEra"][
"PeopleInvolved"], {"BirthDate", "DeathDate", "Name", "Image",
"Occupation"}], {__, _Missing}];
In[2]:=
lifespan =
GroupBy[romanticerapeople,
Last -> (Tooltip[
Labeled[Interval@#[[1 ;; 2]], #[[3]], "StartBubble"],
Labeled[#[[4]], DateDifference[#[[1]], #[[2]], "Year"]]] &)];
각 작곡가를 별도의 행으로 표시합니다.
In[3]:=
TimelinePlot[lifespan[{"composer"}], PlotLayout -> "Stacked",
LabelStyle -> 12, ImageSize -> 550,
PlotLabel -> "Romantic Era Composers", PlotTheme -> "Grid"]
Out[3]=
최소한의 행을 사용합니다.
In[4]:=
TimelinePlot[lifespan[{"composer"}], PlotLayout -> "Grouped",
LabelStyle -> 12, ImageSize -> 550,
PlotLabel -> "Romantic Era Composers", PlotTheme -> "Grid"]
Out[4]=
시간 간격의 마지막에 라벨을 위치시킵니다.
In[5]:=
lifespan =
GroupBy[romanticerapeople,
Last -> (Tooltip[
Labeled[Interval@#[[1 ;; 2]], #[[3]], "EndBubble"],
Labeled[#[[4]], DateDifference[#[[1]], #[[2]], "Year"]]] &)];
In[6]:=
TimelinePlot[lifespan[{"composer"}], LabelStyle -> 12,
ImageSize -> 550, PlotLabel -> "Romantic Era Composers",
PlotTheme -> "Grid"]
Out[6]=
데이터 항목이 많아 공간이 제한되어 있는 경우, 구간의 직후에 라벨을 위치시킵니다.
In[7]:=
lifespan =
GroupBy[romanticerapeople,
Last -> (Tooltip[Labeled[Interval@#[[1 ;; 2]], #[[3]], After],
Labeled[#[[4]], DateDifference[#[[1]], #[[2]], "Year"]]] &)];
In[8]:=
TimelinePlot[Values@lifespan, PlotLayout -> "Grouped",
LabelStyle -> 14, AspectRatio -> 1/1.2, ImageSize -> 450,
PlotLegends ->
LineLegend[Flatten@Keys[lifespan],
LegendLayout -> "ReversedColumn"], PlotTheme -> "Web"]
Out[8]=
이 데이터 집합 전반에 걸쳐 "Packed"라는 레이아웃을 사용합니다.
In[9]:=
TimelinePlot[Values@lifespan, PlotLayout -> "Packed",
LabelStyle -> 14, AspectRatio -> 1/1.2, ImageSize -> 450,
PlotLegends ->
LineLegend[Flatten@Keys[lifespan],
LegendLayout -> "ReversedColumn"], PlotTheme -> "Web"]
Out[9]=