带图表的历史表示
Posted
技术标签:
【中文标题】带图表的历史表示【英文标题】:Historical Representation with graph 【发布时间】:2015-11-18 06:14:57 【问题描述】:是否有任何可用的图表可用于如下图所示的历史表示?我只是试图模拟我想要的图表,就像这样。
不想要相同的图表,但要代表历史数据的东西。
这将显示从过去打开的前 5 个项目状态。
想知道我们是否可以使用s-s-rS
中的任何类型的图表或任何类型的图表来实现这一点?
请帮帮我
【问题讨论】:
【参考方案1】:在 s-s-rS 中选择水平条属性。并检查反向正确并保存。
【讨论】:
【参考方案2】:s-s-rS
应该与System.Web.UI.DataVisualization.Charting
中的SeriesChartType.RangeBar
具有相似或等效的内容。或者你可以直接使用这个命名空间。
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”,这是很大的帮助。以上是关于带图表的历史表示的主要内容,如果未能解决你的问题,请参考以下文章