마커 (ILMarker
)와 '포인트'(ILPoints
)는 매우 다른 짐승이다. 마커는 훨씬 유연하게 구성 가능하며 대개 더 멋지게 보이고 렌더하는 데 훨씬 더 비쌉니다. 일반적으로 테두리 (선 모양)와 채워진 영역 (삼각형 모양)으로 구성되며 미리 정의 된 모양이 여러 개 있습니다.
반면에 ILPoints는 빠르고 쉽게 디자인되었습니다. 플로팅 성능을 떨어 뜨리지 않고도 수백만 포인트를 쉽게 만들 수 있습니다. 이것을 마커로 사용하지 마십시오! 그러나 그러한 점은 다음과 같습니다 : 채워진 원. 그게 전부 야. 국경도없고 다른 모양도 없습니다.
그러나 질문을 던지기 위해 1000 점을주고 싶다면 그렇게 할 수 있습니다. 대신 ILLinePlot
을 사용하고 마커를 구성하십시오. 마커가 나타나도록 라인 색을 Color.Empty
으로 설정할 수 있습니다. 이 점의 각 세트에 최대 마커 (점) 분할 할 개별 표식에 대한 개별 색상을 얻기 위하여
new ILLinePlot(points, lineColor: Color.Empty, markerStyle: MarkerStyle.TriangleDown)
. 위에서 설명한 스키마를 사용하여 각 점 집합에 대한 ILLinePlot을 만듭니다.
'동적'을 다루는 부분도 간단합니다. 런타임에 마커 유형과 다른 속성을 변경할 수 있습니다. 여기에 현장에 아무 곳이나 클릭하여 빨간색 삼각형 표식과 흰색 사각형 마커와 마커를 toogles 하나의 간단한 예입니다
ilPanel1.Scene.MouseClick += (_s, _a) => {
if (_a.DirectionUp) return;
var lp = ilPanel1.Scene.First<ILLinePlot>();
if (lp != null) {
if (lp.Marker.Style == MarkerStyle.TriangleDown) {
lp.Marker.Style = MarkerStyle.Rectangle;
lp.Marker.Fill.Color = Color.White;
} else {
lp.Marker.Style = MarkerStyle.TriangleDown;
lp.Marker.Fill.Color = Color.Red;
}
lp.Configure();
ilPanel1.Refresh();
}
};
확인, 나는 당신의 질문은 이제 분명하다 생각합니다. 불행히도 필자는 ILNumerics에서 플롯을 사용하지 않았으므로 더 이상 당신을 도울 수 없습니다. 희망을 갖고 다른 누군가가 - 행운을 빈다. – BartoszKP