0 0

silverlight用visifire画折线图的问题3

数据已经有了,Y轴也没什么问题
现在我希望X轴是固定时间,比如原点是2011-11-01 00:00:00,然后每五分钟在X轴上有一个点
我的数据点分布在X轴上,可能某个五分钟比较密集,某个五分钟比较稀疏
visifire能做到吗?

问题补充:
283433775 写道
可以做到,给你个参考代码:
 public void CreateChart(string tableName, List<DateTime> updateTime, List<object> valueList, string rihgtStr, int chartInterval, IntervalTypes intervaltype)
        {
            Chart chart = new Chart();       //创建一个图表

            /*  设置图表属性   */
            chart.Width = 500;
            chart.Height = 400;
            chart.ToolBarEnabled = true;
            chart.ScrollingEnabled = false;
            chart.View3D = true;

            Title title = new Title() { Text = tableName, Padding = new Thickness(0, 10, 5, 0) };  //图表标题
            chart.Titles.Add(title);         //添加标题

            Axis xAxis = new Axis();         //创建X轴
            xAxis.IntervalType = intervaltype;    //X轴分类类型, 小时*分*秒
            xAxis.Interval = chartInterval;       //X轴坐标间隔距离
            xAxis.ValueFormatString = "hh:mm:ss";      //X轴时间显示格式
            chart.AxesX.Add(xAxis);            //为图表添加X轴


            Axis yAxis = new Axis();        //创建Y轴
            yAxis.Suffix = rihgtStr;         //Y轴后缀%
            yAxis.AxisMinimum = 0;          //Y轴最小值为0      
            chart.AxesY.Add(yAxis);           //为图表添加Y轴


            for (int i = 0; i < valueList.Count; i++)
            {
                DataSeries dataSeries = new DataSeries();   //创建数据线
                dataSeries.RenderAs = RenderAs.Line;        //  数据线显示类型为线型
                dataSeries.XValueType = ChartValueTypes.DateTime;   //设置X轴的类型为日期类型  
                List<string> value = (List<string>)valueList[i];
                for (int j = 0; j < updateTime.Count; j++)
                {
                    DataPoint dataPoint = new DataPoint();   //创建数据点
                    dataPoint.XValue = updateTime[j];         //设置数据点X轴的值;
                    dataPoint.YValue = double.Parse(value[j]);  //设置Y轴值
                    dataPoint.MarkerSize = 8;              //设置数据点的大小
                    dataPoint.MouseLeftButtonDown += new MouseButtonEventHandler(dataPoint_MouseLeftButtonDown);  //数据点的鼠标单击事件                   
                    dataSeries.DataPoints.Add(dataPoint);       //为数据线添加数据点
                }
                chart.Series.Add(dataSeries);           //为图表添加数据线
            }

            LayoutRoot.Children.Add(chart);
        }





283433775:
您有QQ吗?我想详细的问一下~

问题补充:

[img][/img]


这个图还是有问题,下面的x轴是正常的,但数据不对,数据应该分布在X轴两点之间~

问题补充:而且我希望把这些东西都显示在一个dataSeries上,可以做到吗?

问题补充:

我希望的图大概是这样子~
2011年11月16日 14:41
  • 大小: 33 KB
  • 大小: 17.6 KB

1个答案 按时间排序 按投票排序

0 0

采纳的答案

可以做到,给你个参考代码:

 public void CreateChart(string tableName, List<DateTime> updateTime, List<object> valueList, string rihgtStr, int chartInterval, IntervalTypes intervaltype)
        {
            Chart chart = new Chart();       //创建一个图表

            /*  设置图表属性   */
            chart.Width = 500;
            chart.Height = 400;
            chart.ToolBarEnabled = true;
            chart.ScrollingEnabled = false;
            chart.View3D = true;

            Title title = new Title() { Text = tableName, Padding = new Thickness(0, 10, 5, 0) };  //图表标题
            chart.Titles.Add(title);         //添加标题

            Axis xAxis = new Axis();         //创建X轴
            xAxis.IntervalType = intervaltype;    //X轴分类类型, 小时*分*秒
            xAxis.Interval = chartInterval;       //X轴坐标间隔距离
            xAxis.ValueFormatString = "hh:mm:ss";      //X轴时间显示格式
            chart.AxesX.Add(xAxis);            //为图表添加X轴


            Axis yAxis = new Axis();        //创建Y轴
            yAxis.Suffix = rihgtStr;         //Y轴后缀%
            yAxis.AxisMinimum = 0;          //Y轴最小值为0      
            chart.AxesY.Add(yAxis);           //为图表添加Y轴


            for (int i = 0; i < valueList.Count; i++)
            {
                DataSeries dataSeries = new DataSeries();   //创建数据线
                dataSeries.RenderAs = RenderAs.Line;        //  数据线显示类型为线型
                dataSeries.XValueType = ChartValueTypes.DateTime;   //设置X轴的类型为日期类型  
                List<string> value = (List<string>)valueList[i];
                for (int j = 0; j < updateTime.Count; j++)
                {
                    DataPoint dataPoint = new DataPoint();   //创建数据点
                    dataPoint.XValue = updateTime[j];         //设置数据点X轴的值;
                    dataPoint.YValue = double.Parse(value[j]);  //设置Y轴值
                    dataPoint.MarkerSize = 8;              //设置数据点的大小
                    dataPoint.MouseLeftButtonDown += new MouseButtonEventHandler(dataPoint_MouseLeftButtonDown);  //数据点的鼠标单击事件                   
                    dataSeries.DataPoints.Add(dataPoint);       //为数据线添加数据点
                }
                chart.Series.Add(dataSeries);           //为图表添加数据线
            }

            LayoutRoot.Children.Add(chart);
        }

2011年11月16日 15:06

相关推荐

    silverlight 报表visifire_v3.5.3

    首先,Visifire的核心特性在于其对多种图表类型的全面支持,包括柱状图、折线图、饼图、散点图、热力图等,这些图表类型可以满足各种数据分析和展示的需求。通过灵活的配置选项,开发者可以定制图表的颜色、样式、...

    silverlight Visifire 修正源码

    它提供了多种图表类型,包括折线图、柱状图、饼图、散点图等,使开发者能够轻松地将数据转化为直观的可视化表示。Visifire的灵活性和可定制性很高,适用于各种项目,从小型应用到大型企业级系统。 **源码修正** 在...

    Visifire类股票走势图

    Visifire是针对Silverlight的图表组件库,支持多种图表类型,包括折线图、柱状图、饼图等。对于股票走势图而言,Visifire的折线图是最为适用的,因为它能清晰地展示价格随时间的变化趋势。Visifire的3D效果为图表...

    Visifire类心电图

    Visifire是开源的图表库,它支持多种类型的图表,如柱状图、折线图、饼图等,并且提供了丰富的3D效果。在心电图应用中,Visifire展现了其灵活性和高效性,能够实时地更新数据并动态显示,这在监测和分析生理数据时...

    Silverlight Visifire 图表控件v3.6.5 去水印版

    1. **多样化图表类型**:Visifire 支持各种图表类型,如柱状图、折线图、饼图、散点图、热力图等,以满足不同数据展示需求。 2. **动态效果**:它支持实时数据更新,图表可以随着数据变化而实时刷新,提供流畅的...

    visifire_v3.0.6_source+documentation+VisifireDemo改掉水印之后

    这款插件能够帮助开发者轻松创建各种图表,如折线图、柱状图、饼图、散点图等,以直观地展示复杂的数据。Visifire_v3.0.6是其一个版本,包含了源代码、文档以及演示示例。 源码部分,visifire_v3.0.6_source.zip,...

    Silverlight 及WPF visifire_v4.0.2的dll文件下载

    Visifire 的目标是帮助开发者轻松地创建动态和实时的数据图表,例如折线图、柱状图、饼图等。 Silverlight 是一种轻量级的插件技术,由微软开发,用于在Web浏览器中提供丰富的用户体验。它支持多媒体、图形和交互式...

    在WinForm中使用Visifire实现统计图表功能

    ### 使用Visifire在WinForm中实现统计图表功能 #### 一、Visifire简介 Visifire是一款功能强大的图表工具包,它提供了一系列丰富的数据可视化控件,主要用于WPF、Silverlight和WP7等现代应用程序开发环境中。通过...

    Silverlight的开源控件,visifire3

    它的特点是提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图等,使得开发者能够轻松地在Web应用程序中展示复杂的数据。在给定的压缩包"visifire_v3.0.9"中,我们可以找到Visifire的这个免费版本,用于在项目...

    曲线图示例下载(Visifire.Charts)

    使用VisifireCharts,开发者可以创建各种类型的图表,如柱状图、折线图、饼图、散点图等。Visifire的特点包括: 1. **交互性**:图表支持鼠标悬停、点击等交互,提供丰富的用户反馈。 2. **自定义性**:可以自定义...

    visifire+sivlerlight组合图

    通过将Visifire与Silverlight结合,开发者可以创建出引人入胜的柱状图、折线图以及各种复杂的组合图,使得数据以直观、动态的方式展示出来。 Visifire的核心优势在于其灵活性和易用性。它提供了丰富的图表类型,...

    visifire曲线图表控件for silverlight

    Visifire的曲线图表控件允许开发者创建多种类型的曲线图,如折线图、面积图、曲线图等,适用于展示连续性数据或趋势分析。 3. **图表控件**: 在软件开发中,图表控件是用于展示数据的组件,它们能够将数据转化为...

    visifire silverlight开源

    它提供了丰富的图表类型,包括柱状图、折线图、饼图、面积图、散点图等,使得开发者能够轻松地在Silverlight应用中创建动态且交互式的数据展示。 Visifire的核心特点在于其高效性和灵活性。它的性能优化使其能够在...

    visifire图表控件及其实例

    Visifire支持多种图表类型,包括折线图、柱状图、饼图、散点图等,使得数据可视化变得简单而高效。 Visifire的核心特性包括: 1. **高性能**:Visifire控件优化了渲染性能,即使在大数据集下也能流畅运行,提供...

    visifire曲线图表控件(silverlgith)

    1. **多类型图表**:Visifire支持多种图表类型,如折线图、柱状图、饼图、散点图、面积图等,使得开发者可以根据需求选择最适合的数据表现形式。 2. **实时更新**:它能够实现实时数据更新,这意味着图表会随着后台...

    Visifire Chart 控件+示例

    1. **多样的图表类型**:Visifire支持24种不同的图表类型,如折线图、柱状图、饼图、散点图、雷达图、热力图等,满足不同数据展示需求。 2. **实时更新**:Visifire图表能够实时反映数据变化,这对于展示动态数据流...

    Visifire各种图表资料

    2. **丰富的图表类型**:包括折线图、柱状图、饼图、散点图、面积图、条形图、甜甜圈图、雷达图等多种图表,满足不同数据展示需求。 3. **实时更新**:Visifire支持实时数据绑定,这意味着图表会随着数据源的改变...

    VISIFIRE控件使用

    通过以上步骤,你可以在WinForm中使用Visifire实现各种图表,包括但不限于直方图、折线图等。Visifire还支持多种图表类型,如饼图、散点图、面积图等,以及自定义颜色、样式和动画效果,可以满足不同数据展示需求。 ...

    WPF版本Visifire图表示例

    Visifire是一款强大的开源图表库,它允许开发者轻松地为WPF应用添加各种类型的图表,如折线图、柱状图、饼图等。这个示例项目包含了所有必要的组件和代码,可以让你直接运行并体验Visifire的功能。 **1. Visifire库...

    Visifire图表DLL

    SLVisifire.Charts.dll是核心组件,它提供了多种图表类型,如柱状图、折线图、饼图、面积图、散点图等。这些图表可以帮助开发者将复杂的数据转化为易于理解的视觉表示。Visifire支持动态数据绑定,这意味着你可以...

Global site tag (gtag.js) - Google Analytics