当前位置:   article > 正文

C# WPF中用ChartControl绘制柱形图

wpf 柱状图

本文程演示了图表设计器,它允许您从头开始自定义或创建图表。本文演示使用设计器创建简单未绑定图表所需的步骤。

01

使用设计器创建图表

Step 1. 创建新项目并运行图表设计器

  • 创建一个新的WPF应用程序项目。

  • 如第1课所述,将ChartControl组件添加到项目中(请参见步骤1)。

  • 调用图表控件的智能标记菜单或快速操作。选择运行设计器链接:

2c5be832cf43acd9c9423f9ea112cb32.png

这将调用图表设计器。

您可以在图表元素树部分中看到并排条形图系列(系列1)。请注意,系列1没有系列点。

5922fe170598618f9c0f8939341f6030.png

Step 2. 将Series 添加到图表中

在本节中,将第二个系列添加到图表中,并用点填充这两个系列。

  • 在树中选择系列1,然后在“选项”选项卡中,指定“填充”作为系列的显示名称。

e64fa76f9f9501e4e29fa7532f43c88e.png

  • 使用“展开”按钮展开“填充系列”选项,然后选择“点”项目。

  • 在“数据”选项卡中,使用以下数据填充参数和值列:

eeeff666510f345a1dcda35a18bcc7d5.png

然后,将第二个系列添加到图表中(例如,面积系列)。为此,请执行以下操作:

  • 单击“元素”树中系列项目的“添加”按钮。在“调用”对话框中,单击“区域二维系列类型”。这将使用随机生成的数据将面积系列(系列2)添加到图表中。请注意,参数的轴刻度类型是基于第一个系列的定性数据定义的。第二个序列是隐藏的,因为它有数值参数。

a423ae2b7354fb1fe48da040ce76b8c3.png

  • 将第二个系列的显示名称指定为区域。

    68d3a3dfd2e03c7a46f656caa241a6b5.png

  • 单击“清除系列数据”按钮以清除自动生成的数据。

247e61bbe4e4f5588a11ab4b2287206b.png

然后,定义面积系列点的数据,如下所示:

0ac09dfb2ed30c72446f8b1fd6b1527b.png

Step 3. 自定义图表

本节介绍如何自定义图表的外观。

#在单独的窗格中显示系列

以下步骤显示如何在单独的窗格中显示每个系列:

  • 展开“窗格”项。单击“其他窗格”项目的“添加”按钮以创建新窗格。

9727729b387e93acca9cba9f83e938dc.png

  • 在“图元”树中选择面积系列。在选项选项卡中,找到窗格选项,并在其下拉列表中选择窗格#1项。

787e22e51edfbfe29e5d7e321b11e0c4.png

添加次轴

按照以下步骤添加和自定义次轴:

  • 展开“轴”项目。单击次Y轴项目的“添加”按钮以添加次Y轴。

    81b1db68de5375053a2bf6c65e235c9d.png

选择面积系列。在“选项”选项卡中,使用选项的下拉列表将“Y轴”选项设置为次轴Y#1。

fde6167b04821ea2823c3af0e1faeee9.png

在“图元”树中选择次轴Y#1。然后,将轴的对齐选项设置为“近”。

79def48beb8a423c9729d6068b8dff43.png

下图显示了结果。单击“保存并退出”按钮应用所有更改并关闭设计器。

28b74d88e8a9dfd84ced1fe6c8e4b83b.png

02


结果

  1. <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:local="clr-namespace:Lesson2"
  6. xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts"
  7. x:Class="Lesson2.MainWindow"
  8. mc:Ignorable="d"
  9. Title="MainWindow" Height="405" Width="720">
  10. <Grid>
  11. <dxc:ChartControl>
  12. <dxc:ChartControl.Legends>
  13. <dxc:Legend/>
  14. </dxc:ChartControl.Legends>
  15. <dxc:XYDiagram2D PaneOrientation="Vertical">
  16. <dxc:XYDiagram2D.SecondaryAxesY>
  17. <dxc:SecondaryAxisY2D x:Name="axisy0" Alignment="Near"/>
  18. </dxc:XYDiagram2D.SecondaryAxesY>
  19. <dxc:XYDiagram2D.DefaultPane>
  20. <dxc:Pane x:Name="pane"/>
  21. </dxc:XYDiagram2D.DefaultPane>
  22. <dxc:XYDiagram2D.Panes>
  23. <dxc:Pane x:Name="pane0"/>
  24. </dxc:XYDiagram2D.Panes>
  25. <dxc:BarSideBySideSeries2D DisplayName="Population">
  26. <dxc:SeriesPoint Argument="USA" Value="321.3"/>
  27. <dxc:SeriesPoint Argument="Russia" Value="146.2"/>
  28. <dxc:SeriesPoint Argument="Canada" Value="35.7"/>
  29. <dxc:SeriesPoint Argument="Brazil" Value="201"/>
  30. <dxc:SeriesPoint Argument="Australia" Value="23.1"/>
  31. </dxc:BarSideBySideSeries2D>
  32. <dxc:AreaSeries2D DisplayName="Area"
  33. dxc:XYDiagram2D.SeriesPane="{Binding ElementName=pane0}"
  34. dxc:XYDiagram2D.SeriesAxisY="{Binding ElementName=axisy0}">
  35. <dxc:SeriesPoint Argument="USA" Value="9.5"/>
  36. <dxc:SeriesPoint Argument="Russia" Value="17.1"/>
  37. <dxc:SeriesPoint Argument="Canada" Value="10"/>
  38. <dxc:SeriesPoint Argument="Brazil" Value="8.5"/>
  39. <dxc:SeriesPoint Argument="Australia" Value="7.7"/>
  40. </dxc:AreaSeries2D>
  41. </dxc:XYDiagram2D>
  42. </dxc:ChartControl>
  43. </Grid>
  44. </Window>

运行应用程序。下图显示了运行时生成的图表:

5e63d1205dfba3354918f9dcc2214938.png

原文链接:https://docs.devexpress.com/WPF/17461/controls-and-libraries/charts-suite/chart-control/getting-started/lesson-2-create-a-chart-using-the-designer

翻译小编:mm1552923

公众号:dotNet编程大全

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/270824
推荐阅读
相关标签
  

闽ICP备14008679号