关于c# chart图表显示问题,急!!!!

问题描述

最近在自学C#,想编写一个自动控制原理的单回路控制系统,输出曲线想画出来类似于下图的样子:但是自己不是特别会编写图形显示的代码,偶然查到c#里面的chart控件就可以很好的显示图形,但是我弄到现在的成果如下图所示:在显示区域的点间隔太稀疏了,一页上面只能显示5个点,我想请教一下怎么样可以把数据点之间的间隔缩小,最好可以让输出曲线达到稳定的时候在一页上就可以显示出来,不用前后拖动滚动条请大神指教呀,万分感激!

解决方案

解决方案二:
//使用方法DataTable_统计报表_for_chart=newDataTable();_统计报表_for_chart.Columns.Add(newDataColumn("照明分控点",typeof(string)));_统计报表_for_chart.Columns.Add(newDataColumn("耗电量(度)",typeof(double)));for(inti=0;i<_表格.Count;i++){DataRownewrow=_统计报表_for_chart.NewRow();newrow["照明分控点"]=_表格[i].照明分控点.Trim();newrow["耗电量(度)"]=_表格[i].耗电量;_统计报表_for_chart.Rows.Add(newrow);}//让X轴显示滚动条,适合非常多的X轴坐标,前提是要先runwizard,要先有一个已经存在的series。XYDiagramxyDiagram1=chartControl1.DiagramasXYDiagram;xyDiagram1.AxisX.Range.Auto=false;//要开启滚动条必须将其设置为falsexyDiagram1.AxisX.Range.MaxValueInternal=30.5D>(9+1)?(29+1):30.5D;//在不拉到滚动条的时候,X轴显示多个值,既固定的X轴长度。20150305,加大到29+1的时候,横轴的刻度间隔就比较小了,基本可以满意。xyDiagram1.AxisX.Range.MinValueInternal=-0.5D;xyDiagram1.AxisX.Range.ScrollingRange.Auto=false;xyDiagram1.AxisX.Range.ScrollingRange.MaxValueSerializable=(9+1).ToString();//整个X轴最多显示多多少个值xyDiagram1.AxisX.Range.ScrollingRange.MinValueSerializable="0";xyDiagram1.AxisX.Range.ScrollingRange.SideMarginsEnabled=true;//是否从X轴原点开始显示xyDiagram1.AxisX.Range.SideMarginsEnabled=false;xyDiagram1.AxisX.VisibleInPanesSerializable="-1";//xyDiagram1.AxisY.NumericOptions.Format=DevExpress.XtraCharts.NumericFormat.Percent;//显示为百分数xyDiagram1.AxisY.Range.Auto=true;//xyDiagram1.AxisY.Range.MaxValueSerializable="1.02";//固定Y轴的高度//xyDiagram1.AxisY.Range.MinValueSerializable="0.5";xyDiagram1.AxisY.Range.ScrollingRange.SideMarginsEnabled=true;xyDiagram1.AxisY.Range.SideMarginsEnabled=true;xyDiagram1.AxisY.VisibleInPanesSerializable="-1";xyDiagram1.EnableAxisXScrolling=true;//启用滚动条if(ChartTool.是否第一次==false&&chartControl1.Series!=null){chartControl1.Series.Clear();}chartControl1.CreateSeries(_输入的年月+"耗电量折线图",ViewType.Line,_统计报表_for_chart,"照明分控点","耗电量(度)");

//封装的类publicstaticclassChartTool{publicstaticbool是否第一次=true;publicstaticvoidCreateSeries(thisChartControlchat,stringseriesName,ViewTypeseriesType,objectdataSource,stringxBindName,stringyBindName){CreateSeries(chat,seriesName,seriesType,dataSource,xBindName,yBindName,null);//这里调用了下面的重载函数:CreateSeries}publicstaticvoidCreateSeries(thisChartControlchat,stringseriesName,ViewTypeseriesType,objectdataSource,stringxBindName,stringyBindName,Action<Series>createSeriesRule){if(chat==null)thrownewArgumentNullException("chat");if(string.IsNullOrEmpty(seriesName))thrownewArgumentNullException("seriesType");if(string.IsNullOrEmpty(xBindName))thrownewArgumentNullException("xBindName");if(string.IsNullOrEmpty(yBindName))thrownewArgumentNullException("yBindName");if(chat.Series!=null&&是否第一次==true){是否第一次=false;chat.Series.RemoveAt(0);//移除在runwizard里面的默认的第一个Series,以免影响视线。}Series_series=newSeries(seriesName,seriesType);_series.ArgumentScaleType=ScaleType.Qualitative;_series.ArgumentDataMember=xBindName;_series.ValueDataMembers[0]=yBindName;_series.DataSource=dataSource;if(createSeriesRule!=null)createSeriesRule(_series);chat.Series.Add(_series);}}

注意,以上是针对devexpress的chartcontrol控件的代码,不适合用于微软的chart控件。提供你参考。

时间: 2024-11-08 23:55:06

关于c# chart图表显示问题,急!!!!的相关文章

.NET chart图表控件选择性显示曲线问题

问题描述 .NET chart图表控件选择性显示曲线问题 请问.net chart控件 可以用checkbox控制曲线的显示与否吗?就是曲线的图例部分用checkbo显示,每一个Series图例用一个checkbox表示,打上对勾,曲线显示:取消对勾,曲线不显示.或者有其他的控件有这个功能吗?请高手指教. 解决方案 这个很简单,你放几个checkbox,然后每次勾选的时候都添加或者删除series集合里对应的图形,再重新画下就可以了. 解决方案二: 那样checkbox和chart不是一个整体,

chart-.net mvc Chart 图表 如何显示全部X值?

问题描述 .net mvc Chart 图表 如何显示全部X值? 如题,绘制出来的图表,X轴数据缺失,要如何全部显示呢? var key = new Chart(width: 800, height: 400) .AddTitle("职业分布") .AddSeries(xValue: name, yValues: num, chartType: UICharting.SeriesChartType.Line.ToString()) .Write(); 解决方案 你参数传错了吧... 第

ExtJs中chart图表中能否将数据直接显示在图表上

问题描述 ExtJs中chart图表中能否将数据直接显示在图表上.现在只能通过将鼠标放上去才显示数据,有没有把值也在图表标示出来. 解决方案 解决方案二:感觉应该可以吧,你研究下setting配置文件解决方案三:对了,找官网上的example翻翻,看有没有是你需要的例子.解决方案四:它默认的都是tootip的做也是可以做的这个Ext自身没有封装其实这种图标的东西目前大都是这种的包括googleapi中大多都是这种风格的我们也可以不必非得在上边显示解决方案五:谢谢上面几位回复,找了一些资料好像都不

使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示

原文:使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示   首先来看一看实现的效果: PS:原始的程序中更新曲线数据时添加了过渡的效果,具体可查看官网的示例: http://www.visifire.com/silverlight_spline_charts_gallery.php 点击其中的一个例子,然后点击Live Updates,就可看到数据更新时的过渡效果.但是蛋疼的博客园,不知道为什么,我插入了我原始的xap文件,过渡效果却

jQuery Chart图表制作组件Highcharts用法详解_jquery

本文实例讲述了jQuery Chart图表制作组件Highcharts用法.分享给大家供大家参考,具体如下: Highcharts是一个制作图表的纯Javascript类库,主要特性如下: ① 兼容性:兼容当今所有的浏览器,包括iPhone.IE和火狐等等: ② 对个人用户完全免费: ③ 纯JS,无BS: ④ 支持大部分的图表类型:直线图,曲线图.区域图.区域曲线图.柱状图.饼装图.散布图: ⑤ 跨语言:不管是PHP.Asp.net还是Java都可以使用,它只需要三个文件:一个是Highchar

FusionCharts图表显示双Y轴双(多)曲线_javascript技巧

项目中需要FusionCharts图表显示双Y轴,好像FCF_MSLine.swf不可以这样,只能显示一个Y轴,多条线, 找了一下,用MSCombiDY2D.swf可以实现,生成图如下: 两个图表的数据是一样的,设置有一此不同而己 对应的XML文本如下: 复制代码 代码如下: <chart palette='2' caption='图表' rotateNames='0' showValues='0' divLineDecimalPrecision='1' limitsDecimalPrecisi

java 上传图片到服务器上,在页面上不能显示,急急急,在线等,求大神帮忙!!!!!

问题描述 java 上传图片到服务器上,在页面上不能显示,急急急,在线等,求大神帮忙!!!!! java 上传图片到服务器上,图片上传成功,但是在页面展示时不能加载,路径没问题,手动将上传的图片改个名字后能正常加载 解决方案 最终的上传路径有没有特殊字符或者空格啥的,最好不要带特殊字符包括空格啥的. 解决方案二: 图片在内网服务器上A,部署在服务器B的应用要显示图片,受网络限制外网用户无法访问到图片,为了解决这个问题现将图片下载到服务器B上,现在服务器B上存在图片,但是不能正常加载,通过手动地对

extjs4-EXTJS4 chart 图表实现导出

问题描述 EXTJS4 chart 图表实现导出 2C 使用window.open(URL)方法,不是文档上的例子,如何实现svg参数传到后台,通过action实现图表导出?求大神解答,最好能有代码例子 解决方案 指定type为 type: 'image/svg+xml'可以返回svg html代码,自己用Ext.Ajax.request post html代码到你的动态页 var svg = chart.save({ type: 'image/svg+xml' }); Ext.Ajax.req

统计图-怎样把数据库里的数据用图表显示在手机上

问题描述 怎样把数据库里的数据用图表显示在手机上 我们公司有一些业务数据,希望能够通过简单一点的实现方式,对数据进行汇总统计,然后用图表显示出来,最好在手机上也可以查看.想问一下需要做些什么?实现起来难不难? 解决方案 最简单的就是直接看网页,第二种是做一个APP 解决方案二: echarts用的canvas绘图,移动端浏览器主流浏览器都支持canvas 解决方案三: 这种当然是通过web页面了,服务器提供.然后用各种图标控件,比如百度的echarts可以很好的画出各种图形.客户端只要有浏览器就