Hi,
I am trying to display Markers in my chart in such a way that it only apears on cirtain datapoints but not at all data points. Currently I am using line chart and Binding my collection with chart at runtime and maping Xvalue and Yvalue on my chart. But I want to display markers on cirtain XValues not to all Xvalues in mychart . Can anyone suggest me the solution please.
Thanks.
Currently, there is no way to do this with a template or converter (that I see). One way to do this programmatically is, when the data changes you can override the Marker property in the DataPoint class.
Each Series is populated with DataPoint items. The Series object contains a Marker property which is applied to all items. Go ahead and assign a Marker you want to this class. For each DataPoint that you do not want to show the default Marker, you can assign a Marker which has Type set to None. To hide the Marker text, set the Marker Foreground to Transparent.
Another approach is to not assign a default Marker to the Series. Simply assign a New Marker to each relevant DataPoint at run time.
If you would like to submit a feature request for this idea for a feature, please do so. We are always listening to our customers on how to improve our products!http://devcenter.infragistics.com/Protected/RequestFeature.aspx
Thank you!
Hi Curtis,
Thanks for your reply. I already have done in the same way but by this method I have identify a problem which is to create datapoints explicitely, and if want bind my graph with my collection then on data change I have to explicitely notify my Gui to redraw graph on change in data in my collection.
Can you please suggest me more efficient way to achieve this functionality.
Muhammad,
The attached sample seems to display toolTips on the markers.
Did you have any ather question?
Sincerely,
Sam
Hi Sam,
Thanks for reply, Well yes its displaying tooltip but I need to show some custom text in my marker label not the valueX or ValueY. Any other custom value... Can you please suggest a solution in this regard.
Here is an example to add custom text to a marker in code:
Marker marker1 = new Marker(); marker1.FontSize = 18; marker1.Format = "your text {Value:c}"; marker1.Type = MarkerType.Star5; marker1.MarkerSize = 2; marker1.Fill = Brushes.Red;
//This code assumes you already have a Series with DataPoints[n] or more DataPoints on the chart this.xamChart1.Series[0].DataPoints[5].Marker = marker1;
Adding custom text in xaml requires even less code. Please refer to the following help topic for additional information on customizing markers:
http://help.infragistics.com/NetAdvantage/WPF/current/CLR3.5/?page=xamChart_Working_with_Markers.html
Let me know if you have any question.
Thanks for your reply. Well yes its working to set custom value but I want to show my tool tip value or binded object value. Hope you ill get better idea from the Code given bellow
public static Series MakeSeriesForLabels <T> (T SeriesList, string Labelstring)
{
();
DataMapingBinding.Source = SeriesList;
sr.SetBinding(
Series.DataSourceProperty, DataMapingBinding);
sr.Label = Labelstring;
sr.Fill =
Brushes.Transparent;
sr.ChartType =
ChartType.ScatterLine;
sr.DataMapping =
"ValueX=CurvePointX ; ValueY=CurvePointY; ToolTip= Tenors";
m.Fill =
Brushes.Green;
m.Type =
MarkerType.Star5;
m.Stroke =
Brushes.Black;
m.Format =
"{ToolTip:C}"; // Here I want to display Tenors maped in ToolTip and Tenors is one of my objects property.
sr.Marker = m;
return sr;
}
how can I map my object property Tenors in Marker. Please suggest solution.
The chart uses the DataPoint for markers. The ToolTip can be mapped, but it is not a valid token for markers. ValueX and ValueY are designed for the markers.
Here is additional iniformation about data mapping criteria:
http://help.infragistics.com/NetAdvantage/WPF/current/CLR3.5/?page=xamChart_DataMapping_for_xamChart.html