C# WPF DevExpress 图表控件之柱状图
说明:DevExpress版本是17.1。VS是2015。
XAML:
<!--#region 图表控件-->
<dxc:ChartControl x:Name="chartControl1"> <!--#region 图表控件的说明板块-->
<dxc:ChartControl.Legend> <!--#region 说明-->
<dxc:Legend Background="#fff"/>
<!--#endregion --> </dxc:ChartControl.Legend>
<!--#endregion --> <!--#region 图表控件的主题/标题-->
<dxc:ChartControl.Titles>
<dxc:Title FontSize="14" FontFamily="微软雅黑" Foreground="#333" Content="XXX" HorizontalAlignment="Center"/>
</dxc:ChartControl.Titles>
<!--#endregion --> <!--#region 2D图型-->
<dxc:XYDiagram2D SeriesDataMember="Name" BorderThickness="0"> <!--#region 2D图的 X 轴-->
<dxc:XYDiagram2D.AxisX> <!--#region 2D X 轴-->
<dxc:AxisX2D x:Name="BaraxisX"> <!--#region X 轴单位-->
<dxc:AxisX2D.CustomLabels>
<dxc:CustomAxisLabel Content="0" Value="0"/>
</dxc:AxisX2D.CustomLabels>
<!--#endregion--> </dxc:AxisX2D>
<!--#endregion--> </dxc:XYDiagram2D.AxisX>
<!--#endregion --> <!--#region 2D 图的 Y轴-->
<dxc:XYDiagram2D.AxisY> <!--#region 2D Y 轴-->
<dxc:AxisY2D> <!--#region Y 轴单位-->
<dxc:AxisY2D.CustomLabels>
<dxc:CustomAxisLabel Content="0" Value="0"/>
<dxc:CustomAxisLabel Content="300000" Value="300000"/>
</dxc:AxisY2D.CustomLabels>
<!--#endregion--> <!--#region Y 轴标题-->
<dxc:AxisY2D.Title>
<dxc:AxisTitle Content="单位:亩" />
</dxc:AxisY2D.Title>
<!--#endregion--> <!--#region Y 最大最小值设置-->
<dxc:AxisY2D.WholeRange>
<dxc:Range MaxValue="600000" MinValue="0" AutoSideMargins="False"/>
</dxc:AxisY2D.WholeRange>
<!--#endregion--> </dxc:AxisY2D>
<!--#endregion --> </dxc:XYDiagram2D.AxisY>
<!--#endregion --> <!--#region 2D图型的层级/系列-->
<dxc:XYDiagram2D.Series> <!--#region 横杆边系列2D-->
<!--ArgumentDataMember存放的是后台表中的一个字段Name-->
<!--ValueDataMember存放的是后台表中的一个字段Number-->
<!--Brush是用来设置柱形图的颜色-->
<!--DisplayName是此柱状图类型的名称-->
<dxc:BarSideBySideSeries2D x:Name="qwe" DisplayName="面积A" ArgumentDataMember="Name" ValueDataMember="Number" Brush="#EDA112"> <!--#region 系列点/柱状图型-->
<!--Argument是此柱形图的说明/简介-->
<!--Value是此柱形图的值,决定了在整块图中的高度-->
<!--<dxc:SeriesPoint Argument="林地面积" Value="30000"/>-->
<!--#endregion --> </dxc:BarSideBySideSeries2D>
<!--#endregion--> <!--#region 横杆边系列2D-->
<!--同上-->
<dxc:BarSideBySideSeries2D x:Name="ewq" DisplayName="面积B" ArgumentDataMember="Name" ValueDataMember="Number" Brush="#7C2E16"> <!--同上-->
<!--<dxc:SeriesPoint Argument="农田" Value="30000"/>--> </dxc:BarSideBySideSeries2D>
<!--#endregion--> </dxc:XYDiagram2D.Series>
<!--#endregion--> </dxc:XYDiagram2D>
<!--#endregion --> </dxc:ChartControl>
<!--#endregion -->
后台隐藏代码:
using DevExpress.Xpf.Charts;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes; namespace WpfAppFirst
{
/// <summary>
/// Histogram.xaml 的交互逻辑
/// </summary>
public partial class Histogram : Window
{
//定义两个 类 ToList();
List<Users> UserList1 = new List<Users>();
List<Users> UserList2 = new List<Users>(); /// <summary>
/// 构造函数
/// </summary>
public Histogram()
{
#region 构造的数据
Users us = new Users();
string str1 = "Z地;A地;Y地;B地;X地;C地;W地;D地;V地;E地;U地;F地;T地";
string str2 = "510000;450000;114000;54000;120000;60000;30000;12000;0;0;0;0;0";
string str3 = "540000;450000;294000;126000;126000;60000;42000;12000;0;0;0;0;0";
#endregion #region 向列表中添加构造的数据
for (int i = ; i < str1.Split(';').Length; i++)
{
UserList1.Add(new Users
{
Name = str1.Split(';')[i],
Number = Convert.ToDouble(str2.Split(';')[i]),
});
}
for (int i = ; i < str1.Split(';').Length; i++)
{
UserList2.Add(new Users
{
Name = str1.Split(';')[i],
Number = Convert.ToDouble(str3.Split(';')[i]),
});
}
#endregion InitializeComponent();
} /// <summary>
/// 窗体加载时事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_Loaded(object sender, RoutedEventArgs e)
{
//将数据绑定到柱状图的BarSideBySideSeries2D 中
this.qwe.DataSource = UserList1;
this.ewq.DataSource = UserList2;
} /// <summary>
/// 自定义类
/// </summary>
public class Users
{
private string name;
private double number; public string Name
{
get
{
return name;
} set
{
name = value;
}
} public double Number
{
get
{
return number;
} set
{
number = value;
}
}
}
}
}
效果图:

C# WPF DevExpress 图表控件之柱状图的更多相关文章
- WPF 曲线图表控件(自制)(二)
原文:WPF 曲线图表控件(自制)(二) 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/koloumi/article/details/775218 ...
- WPF 曲线图表控件(自制)(一)
原文:WPF 曲线图表控件(自制)(一) 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/koloumi/article/details/775092 ...
- WPF Visifire 图表控件
Visifire WPF 图表控件 破解 可能用WPF生成过图表的开发人员都知道,WPF虽然本身的绘图能力强大,但如果每种图表都自己去实现一次的话可能工作量就大了, 尤其是在开发时间比较紧的情况下.这 ...
- WPF DevExpress Chart控件 界面绑定数据源,不通过C#代码进行绑定
<Grid x:Name="myGrid" Loaded="Grid_Loaded" DataContext="{Binding PartOne ...
- Wpf/Wp/Silverlight-Chart图表控件:柱状图、饼状图等使用汇总
链接:http://www.cnblogs.com/jimson/archive/2010/06/21/Wpfchat.html http://www.cnblogs.com/mgen/p/32361 ...
- WPF DevExpress Chart控件 需要引用的类库
DevExpress.Charts.v16.1.Core.dll DevExpress.Data.v16.1.dll DevExpress.Mvvm.v16.1.dll DevExpress.Xpf. ...
- WPF DevExpress Chart控件多Y轴,指定数据参考的Y轴
当Chart中有两个及以上的Y轴时,我们就要指明图表中的柱子或折线对应的是哪个Y轴了,这时候需要指明柱子或者折线的dxc:XYDiagram2D.SeriesAxisY属性,来设置对应的Y轴(dxc: ...
- DevExpress WinForms使用教程:图表控件 - 内置深入查询
[DevExpress WinForms v18.2下载] 在最新发布的DevExpress WinForms v18.2中,DevExpress WinForms和ASP.NET图表控件引入嵌套系列 ...
- Visifire For WPF 图表控件 如何免费
可能用WPF生成过图表的开发人员都知道,WPF虽然本身的绘图能力强大,但如果每种图表都自己去实现一次的话可能工作量就大了, 尤其是在开发时间比较紧的情况下.这时候有必要借助一种专业的图表工具. Vis ...
随机推荐
- c# 一些细节
1.动态对象和匿名对象偶然看到一个语法,觉得特别方便然后频繁使用,但是没有深究,直到今天忽然发现我潜意思中对它的认知居然是错误的. var data=new { State=1,Message=&qu ...
- Spring Cloud Eureka 服务治理
Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能,服务 ...
- hadoop 2.7.1安装和配置
一.安装环境 硬件:虚拟机 操作系统:Centos 6.4 64位 IP:192.168.241.128主机名:admin安装用户:root 二.安装JDK 安装JDK1.7或者以上版本.这里安装jd ...
- JavaMail SMTP服务器发送邮件程序示例 java通过dns服务器解析ip地址
/** * JavaMail SMTP服务器发送邮件程序示例 * 扮演SMTP服务器角色与邮件客户端软件最大的区别就是: * SMTP服务器需要解析不同接收人邮件地址主机名对应的SMTP服务器主机名 ...
- websocket连接的后台反向代理问题
今天要介绍的问题,是一个相对来说比较经典的问题,问题表面看不是很复杂的问题,但是反映出的背后通信逻辑,其实还是比较有意义的. websocket协议是当前绝大部分浏览器都支持的长连接协议,是HTTP协 ...
- 《JavaScript设计模式与开发》笔记 5.关于正确写一个闭包
1.如何正确使用闭包 1.常用闭包 var asd =(function(){ var value = 0 //私有变量放入内存 return function(){ //biubiubiu 发射火箭 ...
- git .gitignore文件
.gitignore ! /* 忽略所有的文件 !/pages/ 添加根目录下的所有文件被跟踪
- 提取字符串substring()
substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法: stringObject.substring(startPos,stopPos) 参数说明: 注意: 1. 返回的内 ...
- [UE4]Overlay容器:图片随着其他容器(比如Vertical Box)大小而同步改变
- [UE4]运行时进入观察模式