C# 如何使用System.Web.UI.DataVisualization.Charting
这就是我到目前为止所做的。请通读整个描述以了解我的要求C# 如何使用System.Web.UI.DataVisualization.Charting,c#,model-view-controller,charts,dotnetcharting,C#,Model View Controller,Charts,Dotnetcharting,这就是我到目前为止所做的。请通读整个描述以了解我的要求 System.Web.UI.DataVisualization.Charting.ChartArea chartArea1 = new System.Web.UI.DataVisualization.Charting.ChartArea(); System.Web.UI.DataVisualization.Charting.Legend legend1 = new System.Web.UI.DataVisu
System.Web.UI.DataVisualization.Charting.ChartArea chartArea1 = new System.Web.UI.DataVisualization.Charting.ChartArea();
System.Web.UI.DataVisualization.Charting.Legend legend1 = new System.Web.UI.DataVisualization.Charting.Legend();
System.Web.UI.DataVisualization.Charting.Series series1 = new System.Web.UI.DataVisualization.Charting.Series();
System.Web.UI.DataVisualization.Charting.Series series2 = new System.Web.UI.DataVisualization.Charting.Series();
System.Web.UI.DataVisualization.Charting.Chart chart1 = new System.Web.UI.DataVisualization.Charting.Chart();
//((System.ComponentModel.ISupportInitialize)(chart1)).BeginInit();
//this.SuspendLayout();
//
// chart1
//
chartArea1.Name = "ChartArea1";
chart1.ChartAreas.Add(chartArea1);
legend1.Name = "Legend1";
chart1.Legends.Add(legend1);
//chart1.Location = new System.Drawing.Point(49, 62);
//chart1.Name = "chart1";
series1.ChartArea = "ChartArea1";
series1.ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.StackedBar;
series1.Legend = "Legend1";
series1.Name = "Series2";
series2.ChartArea = "ChartArea1";
series2.ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.StackedBar;
series2.Legend = "Legend1";
series2.Name = "Series3";
chart1.Series.Add(series1);
chart1.Series.Add(series2);
//chart1.Size = new System.Drawing.Size(534, 300);
chart1.TabIndex = 0;
//chart1.Text = "chart1";
chart1.Series["Series2"].Points.Add(new DataPoint(1, 1));
chart1.Series["Series2"].Points.Add(new DataPoint(2, 4));
chart1.Series["Series2"].Points.Add(new DataPoint(3, 5));
chart1.Series["Series3"].Points.Add(new DataPoint(2, 3));
chart1.Series["Series2"].IsValueShownAsLabel = true;
chart1.Series["Series3"].IsValueShownAsLabel = true;
using (MemoryStream ms = new MemoryStream())
{
chart1.SaveImage(ms, ChartImageFormat.Png);
return File(ms.ToArray(), "image/png");
}
这将给出下面的图表
但我需要的是一张如下的图表,上面有起始值和结束值
我怎么得到它
更新:
我希望显示的数据存储在如下列表中
List<dummyGraph> objGraphList = new List<dummyGraph>();
dummyGraph objDummyGraph = new dummyGraph();
objDummyGraph.RiskCategories = "Compliance,Law,Legislation";
objDummyGraph.HighImpactRisks = "4";
objDummyGraph.MediumImpactRisks = "1";
objDummyGraph.LowImpactRisks = "0";
objDummyGraph.NoImpactRisks = "5";
objDummyGraph.index = 1;
objGraphList.Add(objDummyGraph);
objDummyGraph = new dummyGraph();
objDummyGraph.RiskCategories = "Construction";
objDummyGraph.HighImpactRisks = "5";
objDummyGraph.MediumImpactRisks = "1";
objDummyGraph.LowImpactRisks = "4";
objDummyGraph.NoImpactRisks = "0";
objDummyGraph.index = 2;
objGraphList.Add(objDummyGraph);
List objGraphList=new List();
dummyGraph objDummyGraph=新dummyGraph();
objDummyGraph.RiskCategories=“合规、法律、立法”;
objDummyGraph.HighImpactRisks=“4”;
objDummyGraph.mediummpactrisks=“1”;
objDummyGraph.LowImpactRisks=“0”;
objDummyGraph.NoImpactRisks=“5”;
objDummyGraph.index=1;
添加(objDummyGraph);
objDummyGraph=新dummyGraph();
objDummyGraph.RiskCategories=“施工”;
objDummyGraph.HighImpactRisks=“5”;
objDummyGraph.mediummpactrisks=“1”;
objDummyGraph.LowImpactRisks=“4”;
objDummyGraph.NoImpactRisks=“0”;
objDummyGraph.index=2;
添加(objDummyGraph);
也许系列ChartType.RangeBar
图表类型比系列ChartType.StackedBar
这里有一个参考资料:你能提供你试图显示的数据的描述吗?好的,休尼特,我同意。但我如何在范围栏中显示起始值和结束值呢?我看到了一个特征,比如链接中每个点的Y值的数量。但仅仅给它赋值并不是我想要的,你给它两个y值@你能解释一下吗,现在我使用serieInstance.Points.AddXY(xordinal,yplot1,yplot2);设置y值。根据你的建议,我怎么能给出两个Y值?嗯,你已经在这么做了,对吗?有关rangbars/Columnsher的附加说明和提示,请参阅: