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 ...
随机推荐
- NoHttpResponseException
采用JMeter2.13做Http性能测试时,在高并发请求的情况下,服务器端并无异常,但是Jmeter端报错NoHttpResponseException (the target server fai ...
- java-webService(调用wsdl接口)
使用Axis或XFire实现WebService: Axis2是Apache下的一个重量级WebService框架,准确说它是一个Web Services / SOAP / WSDL 的引擎,是Web ...
- Variant <-->Record Variant <-->Stream
// TARec ---> Variantfunction RecordToVariant(value:TParamRecord):OleVariant;var P:Pointe ...
- MyEclipse+Tomcat配置
一.Tomcat 1 Tomcat概述 Tomcat服务器由Apache提供,开源免费.由于Sun和其他公司参与到了Tomcat的开发中,所以最新的JSP/Servlet规范总是能在Tomcat中体现 ...
- 【转】C# 开发Chrome内核浏览器(WebKit.net)
WebKit.net是对WebKit的.Net封装,使用它.net程序可以非常方便的集成和使用webkit作为加载网页的容器.这里介绍一下怎么用它来显示一个网页这样的一个最简单的功能. 第一步: 下载 ...
- pytest.5.参数化的Fixture
From: http://www.testclass.net/pytest/parametrize_fixture/ 背景 继续上一节的测试需求,在上一节里,任何1条测试数据导致断言不通过后测试用例就 ...
- [蓝桥杯]ALGO-84.算法训练_大小写转换
题目描述: 问题描述 编写一个程序,输入一个字符串(长度不超过20),然后把这个字符串内的每一个字符进行大小写变换,即将大写字母变成小写,小写字母变成大写,然后把这个新的字符串输出. 输入格式:输入一 ...
- maven不同环境的profile配置
1.开发的时候经常需要加载不同的环境,比如本地开发环境dev,生产环境product.如果需要手动去修改的话就太麻烦了,自己实现了maven资源替换,然后多环境下的配置文件管理的demo,在此贴出来. ...
- 廖雪峰Java6 IO编程-2input和output-4Filter模式
1.JDK提供的InputStream分为两类: 直接提供数据的InputStream * FileInputStream:从文件读取 * ServletInputStream:从HTTP请求读取数据 ...
- 改变端口的方法phpstudy
document.ready 一个页面可以用无数次: window.onload 一个页面只能用一次,并且在最顶层: 用户交互:用户在网页上的一些行为: 服务交互:Ajax: 组件:(白话:按照我的规 ...