https://www.cnblogs.com/wyuan/archive/2012/07/22/WPF.html

引言:

  由于项目中需要使用Visifire所以自己就写了一些demo,大家一起共享!

基础Visifire图表的展示

1.Visifire的创建需要引用的DLL包【WPFToolkit.dll;WPFVisifire.Charts;WPFVisifire.Gauges(这个以后会用到)】

2.我们开始创建简单的Visifire图表

第一步:前台代码

<Window x:Class="Wpf_Tray.VisifireWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:vc="clr-namespace:Visifire.Charts;assembly=WPFVisifire.Charts"Title="VisifireWindow" Height="378" Width="536" WindowStartupLocation="CenterScreen"><Grid Name="LayoutRoot"><vc:Chart Name="chart" DockPanel.Dock="Left" Margin="0,40,0,2" /><Button Content="showChartData" Height="23" HorizontalAlignment="Left" Margin="24,8,0,0" Name="btn_showChartData" VerticalAlignment="Top" Width="97" Click="btn_showChartData_Click" /><Button Content="ExportToPng" Height="23" HorizontalAlignment="Left" Margin="134,8,0,0" Name="btn_ExportToPng" VerticalAlignment="Top" Width="88" Click="btn_ExportToPng_Click" /><Button Content="ExportChart" Height="23" HorizontalAlignment="Left" Margin="233,8,0,0" Name="btn_ExportChart" Click="btn_ExportChart_Click" VerticalAlignment="Top" Width="75" /></Grid>
</Window>

写完后的一个显示效果,如图;
http://pic002.cnblogs.com/images/2012/368829/2012072216004293.png

第二步:

实现后台绑定数据,上代码:

/// <summary>/// 绑定数据/// </summary>private void BindData(){DataSet ds = DBSQLHelper.Search("select * from hospitalorg", null, CommandType.Text);BindChart(ds.Tables[0]);}
      public VisifireWindow(){InitializeComponent(); BindData();}

http://pic002.cnblogs.com/images/2012/368829/2012072216483217.png

这是绑定一列的!

第三步:

如图,有三个按钮,‘showChartData’,‘ExportToPng’

1.showChartData,主要是多列数据绑定,实现效果如图:
http://pic002.cnblogs.com/images/2012/368829/2012072216592860.png

上代码:

#region 可以显示多列,绑定界面Chartprivate void BindMoreColumnChart(DataTable dtChart){this.chart.Series.Clear();this.chart.AnimationEnabled = true;this.chart.View3D = true;DataSeries dataSeries = new DataSeries();dataSeries.RenderAs = RenderAs.Bar;dataSeries.LabelEnabled = true;dataSeries.LegendText = "最小值";//图例显示的信息dataSeries.LabelText = "#AxisXLabel, #YValue";DataPoint datapoint;for (int i = 0; i < dtChart.Rows.Count; i++){datapoint = new DataPoint();datapoint.AxisXLabel = dtChart.Rows[i]["job_id"].ToString();datapoint.YValue = Convert.ToDouble(dtChart.Rows[i]["min_lvl"].ToString());dataSeries.DataPoints.Add(datapoint);}this.chart.Series.Add(dataSeries);DataSeries dataSeries1 = new DataSeries();dataSeries1.RenderAs = RenderAs.Bar;dataSeries1.LabelEnabled = true;DataPoint datapoint1;for (int i = 0; i < dtChart.Rows.Count; i++){datapoint1 = new DataPoint();datapoint1.AxisXLabel = dtChart.Rows[i]["job_id"].ToString();datapoint1.YValue = Convert.ToDouble(dtChart.Rows[i]["max_lvl"].ToString());dataSeries1.DataPoints.Add(datapoint1);}dataSeries1.LegendText = "最大值";dataSeries1.LabelText = "#AxisXLabel, #YValue";this.chart.Series.Add(dataSeries1);this.chart.ShadowEnabled = true;}#endregion

2.ExportTopng,是将visifire当前实现的图表导成png,上代码:

#region ExportToPng/// <summary>/// ExportToPng/// </summary>/// <param name="path"></param>/// <param name="surface"></param>public void ExportToPng(Uri path,Visifire.Charts.Chart surface){if (path == null) return;//Save current canvas transform 保存当前画布变换Transform transform = surface.LayoutTransform;//reset current transform (in case it is scaled or rotated) 重设当前画布(如果缩放或旋转)surface.LayoutTransform = null;//Create a render bitmap and push the surface to it 创建一个渲染位图和表面RenderTargetBitmap renderBitmap = new RenderTargetBitmap((int)surface.Width,(int)surface.Height,96d, 96d,PixelFormats.Pbgra32);renderBitmap.Render(surface);// Create a file stream for saving imageusing (FileStream outStream = new FileStream(path.LocalPath,FileMode.Create)){//Use png encoder for our dataPngBitmapEncoder encoder = new PngBitmapEncoder();// push the rendered bitmap to itencoder.Frames.Add(BitmapFrame.Create(renderBitmap));// save the data to the streamencoder.Save(outStream);}// Restore previously saved layout 恢复以前保存布局surface.LayoutTransform = transform;}#endregion#region 将Visifire图表保存为图片  http://www.visifire.com/blog/page/15/private void btn_ExportToPng_Click(object sender, RoutedEventArgs e){ExportToPng(new Uri("D:/Visifire.png"), this.chart);}
#endregion

【这只是基础,visifire官方网站的文档进行学习,http//www.visifire.com/】

WPF Visifire图表控件使用基础相关推荐

  1. WPF 曲线图表控件(自制)(二)

    原文:WPF 曲线图表控件(自制)(二) 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/koloumi/article/details/775218 ...

  2. Silverlight实用窍门系列:14.Visifire图表控件的使用一(图表的创建和基础使用)【附带源码实例】...

    在实际项目开展中,往往会牵扯到需要绘制图表的情况.而Visifire是一个比较美观大方的第三方图表控件,本文会讲述如何初步使用Visifire控件. 首先我们需要从Visifire的官方网站下载:ht ...

  3. Visifire图表控件的使用

    1.在实际项目开展中,往往会牵扯到需要绘制图表的情况.而Visifire是一个比较美观大方的第三方图表控件,本文会讲 述如何初步使用Visifire控件. 首先我们需要从Visifire的官方网站下载 ...

  4. 有关WPF中DataGrid控件的基础应用总结

    基础说明 DataGrid是WPF提供的基础控件,它可以非常轻松的呈现出一张表格,本文章会按照从易到难的顺序依次将DataGrid的使用方法进行解说,除了MSDN上给出的最基本的例子之外,给出了三个比 ...

  5. 可用于wpf的图表控件:WPFTookit Chart

    当前项目需要一个图表控件,尝试用过mschart和livechart,都不是很满意.这里试一下WPFToolkit.DataVisualization. 引用dll,通过nuget包管理器下载WPFT ...

  6. WPF 曲线图表控件(自制)(一)

    由于公司需要所以自写了一个简单的曲线图表控件,在此分享.先上一张效果图 1.界面xaml X轴和Y轴用 2个line对象写死在xaml上 外部用一个Grid包裹起来,然后X轴的宽度,和Y轴的高度就是绑 ...

  7. Visifire WPF 图表控件 破解

    可能用WPF生成过图表的开发人员都知道,WPF虽然本身的绘图能力强大,但如果每种图表都自己去实现一次的话可能工作量就大了, 尤其是在开发时间比较紧的情况下.这时候有必要借助一种专业的图表工具. Vis ...

  8. wpf 图表控件_LightningChart为外汇衍生品交易商提供数据可视化图表支持

    今天,我在这里介绍一下Arction的LightningChart图表控件在外汇和外汇衍生品交易中的应用. FXVolQuant作为外汇交易商的前沿数据驱动平台,由kuma.capital开发和维护, ...

  9. C# WPF图表控件之ChartControl用法指南①

    " 引言部分,总领全篇文章的中心内容." WPF的DevExpress ChartControl是一种功能强大的可视化工具,可帮助您将数据显示为二维或伪三维条形图.区域.线和许多其 ...

最新文章

  1. 使用硬件定时器软模拟多个定时器(8.15改进版)
  2. Firefox联手Chrome合作开发网页VR标准
  3. GO中方法和函数的区别
  4. .Net 实用技术收藏!!!
  5. 在vm中安装linux虚拟机,如何在vm虚拟机中安装linux
  6. Redis配置和常用命令
  7. 使用Jedis连接远程服务器的redis
  8. 分析设计网上书店数据库,并画E-R图
  9. python需要编译_Python编译安装
  10. KEmulator eclipse 调试
  11. IPTV软件如何做自己的广告系统?
  12. C语言解释一下BA无标度网络
  13. linux的打包压缩文件,linux打包文件,压缩文件
  14. 「2020总结文章」一起回顾 2020,展望 2021(JesksonUI-UniApp)
  15. 怎样使用计算机定时关机,详细教你电脑如何设置定时关机
  16. 登录蒸汽平台显示连接服务器异常,蒸汽平台连接服务器失败
  17. 7、任务分配-任务分派其他人
  18. linux系统漏洞补丁包,RedHat 5.X、6.X Bash漏洞RPM补丁包下载
  19. Excel表格函数(3)
  20. 1008-基于SSM的二手图书交易平台

热门文章

  1. mybatis 简介、中文文档、中英对照文档 下载
  2. [内附完整源码和文档] 基于C++实现的小型超市管理系统
  3. 杭电OJ1070详解 易懂!纯C写法
  4. 手游客户端被破解后通过服务器对抗脱机挂---pk服务器签名规则
  5. 数据安全 | 黑产研究之拖库
  6. 区块链入门--准备搭建自己的区块链
  7. android 工程模式设置中文翻译,进工程模式的方法及翻译,转来的
  8. 图解机器学习(部分)
  9. 将fddb标注转换为VOC格式标注
  10. 华为hcip认证费用和报名资格