SSRS
должны иметь что-то подобное или эквивалентное SeriesChartType.RangeBar
от System.Web.UI.DataVisualization.Charting
. Или, может быть, вы просто можете использовать это пространство имен так, как есть.
protected void Page_Load(object sender, EventArgs e)
{
MyDataCollection data = new MyDataCollection();
foreach (MyData d in data)
Chart1.Series[0].Points.AddXY(d.MyItem, new object[] { d.MyDate[0], d.MyDate[1] });
Chart1.ChartAreas[0].AxisY.LabelStyle.Format = "MMMM";
Chart1.ChartAreas[0].AxisY.IntervalType = DateTimeIntervalType.Months;
Chart1.ChartAreas[0].AxisY.Interval = 1;
Chart1.ChartAreas[0].AxisY.Maximum = data.Max(d => d.MyDate[1]).ToOADate();
}
данных:
public class MyDataCollection : List<MyData>
{
public MyDataCollection()
{
Add(new MyData { MyItem = "Item 5", MyDate = new DateTime[] { new DateTime(2015, 8, 1), new DateTime(2015, 11, 1) } });
Add(new MyData { MyItem = "Item 4", MyDate = new DateTime[] { new DateTime(2015, 6, 1), new DateTime(2015, 11, 1) } });
Add(new MyData { MyItem = "Item 3", MyDate = new DateTime[] { new DateTime(2015, 9, 1), new DateTime(2015, 11, 1) } });
Add(new MyData { MyItem = "Item 2", MyDate = new DateTime[] { new DateTime(2015, 10, 1), new DateTime(2015, 11, 1) } });
Add(new MyData { MyItem = "Item 1", MyDate = new DateTime[] { new DateTime(2015, 7, 1), new DateTime(2015, 11, 1) } });
}
}
public class MyData
{
public string MyItem { get; set; }
public DateTime[] MyDate { get; set; }
}
Большое спасибо «jstreet», это отличная помощь. – Liquid
Добро пожаловать! – jsanalytics