0
ViewXYのLegendBoxでシリーズタイトルの上にマウスを移動すると、シリーズがハイライト表示されることがわかります。凡例ボックスシリーズタイトル、LightningChartの他のチャートシリーズをハイライトする方法は?
私はWPFチャートを使用しています。私は同じ時間に強調したいいくつかのシリーズを持っています。
これはどのように達成できますか?
ViewXYのLegendBoxでシリーズタイトルの上にマウスを移動すると、シリーズがハイライト表示されることがわかります。凡例ボックスシリーズタイトル、LightningChartの他のチャートシリーズをハイライトする方法は?
私はWPFチャートを使用しています。私は同じ時間に強調したいいくつかのシリーズを持っています。
これはどのように達成できますか?
LegendBoxクラスにはSeriesTitle *イベントがあります。そして、いずれのシリーズタイトルをクリックして、すべてのシリーズが強調表示されます
void LegendBox_SeriesTitleMouseClick(object sender, System.Windows.RoutedEventArgs e)
{
m_chart.BeginUpdate();
foreach (PointLineSeries s in m_chart.ViewXY.PointLineSeries)
{
s.SetHighlight();
//s.RemoveHighlight(); //To remove highlight, use this
}
m_chart.EndUpdate();
}
:
m_chart.BeginUpdate();
ViewXY viewXY = m_chart.ViewXY;
viewXY.XAxes[0].ValueType = AxisValueType.Number;
int seriesCount = 10;
//Create series that will highlight the other series
for (int i = 0; i < seriesCount; i++)
{
PointLineSeries s = new PointLineSeries(viewXY, viewXY.XAxes[0], viewXY.YAxes[0]);
s.LineStyle.Color = DefaultColors.SeriesForBlackBackgroundWpf[i];
s.Points = GenerateSomeRandomData((i+1) * 20);
s.Title.Text = "Series " + i.ToString();
viewXY.PointLineSeries.Add(s);
}
viewXY.LegendBox.MoveFromSeriesTitle = false;
viewXY.LegendBox.SeriesTitleMouseClick += LegendBox_SeriesTitleMouseClick;
viewXY.LegendBox.Layout = LegendBoxLayout.Vertical;
m_chart.EndUpdate();
と、次のようにイベントハンドラを定義する:あなたはかなりこのようにそれを利用することができます。 series.MouseHighlightプロパティの設定に基づいて、明るい太い線、明るい色から暗い色へのアニメーション、または元の色を維持します。
うまくいけば、これは:-)
賞賛の男に役立ちます!それは動作します。しかし、私は伝説の中でこれらのシリーズのいくつかを見せて残りを隠したいのですが、それをどうやって行うのですか? –
これは、凡例ボックスに表示したくないすべてのシリーズに対してseries.ShowInLegendBox = falseを設定することで行うことができます。 –
ありがとう非常に有用な答え。 –