FastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。
FastReport.NET官方版下载https://www.evget.com/product/1861/download
"Chart"对象包含许多可在图表编辑器中处理的设置。要调用编辑器,请双击?"Chart"对象:
?"Chart?"对象可以包含一个或多个系列。系列列表显示在编辑器中:
要添加新系列,请按 "Add... "按钮。您将看到 "Gallery?"对话框:
择需要的类别,然后选择 - 需要的系列类型。如果想将序列放在自己的图表区域中,请选中 "Add new chart area for this series?"复选框。对于某些系列类型(如饼图、圆图、金融图、金字塔图),无论复选框状态如何,都会自动添加新的图表区域。
要删除序列,请按 "Delete?"按钮。要更改序列顺序,请使用 "Up"和 "Down?"按钮。
使用图表编辑器,您可以设置每个图表元素的外观。所有属性(超过 100 个)分为几类。其中一些是 "Chart?"对象特有的,而另一些则系列的一部分。
如果从系列列表中选择 "Chart?"对象,则会看到以下属性页面:
如果从系列列表中选择系列对象,则会看到以下属性页面:
您可以通过多种方式在图表中填充数据:
要将图表连接到数据源,请按照以下步骤操作:
需要时,设置数据筛选表达式。该过滤器将只应用于当前系列;
在 "Color?"控件中,您可以指明返回颜色值的数据列。
您也可以为系列提供值列表。在这种情况下,不需要数据连接。请在系列列表中选择一个系列,然后切换到 "Values?"选项卡。在表中填入数值:
默认情况下,图表对象按自然顺序显示数据。您可以更改排序顺序;要更改排序顺序,请从系列列表中选择系列,然后切换到 "Dataprocessing?"选项卡:
您可以选择其中一种排序模式--不排序、按 X 值排序和按 Y 值排序。
当序列中的数据包含多个相同的 X 值时,我们会遇到一个问题。例如,用于演示图表的 MatrixDemo 表中有以下数据:
Name | Year | Monh | ItemsSold | Revenue |
---|---|---|---|---|
Andrew Fuller | 2002 | 1 | 2 | 1800 |
Andrew Fuller | 1999 | 10 | 2 | 1900 |
Andrew Fuller | 1999 | 11 | 2 | 2000 |
Andrew Fuller | 2000 | 2 | 2 | 2100 |
Janet Leverling | 1999 | 10 | 3 | 3000 |
Janet Leverling | 1999 | 11 | 3 | 3100 |
Janet Leverling | 2000 | 3 | 3 | 3200 |
... |
如果我们尝试根据这些数据制作图表(例如,员工的销售额--将 X 值设置为 Name 列,Y 值设置为 ItemsSold 列),我们将得到以下错误结果:
在这种情况下,我们需要将相同的雇员分组为一个值。为此,请在系列列表中选择系列,然后切换到 "Data processing"选项卡。选择分组类型--"X 值",并选择 "Sum?"作为分组函数:
所有相同的员工将被归类为一个值,他们的销售额将被汇总。您将看到以下结果:
该数据处理工具可将多个序列值合并为一个值。您可以选择以下算法之一:
Algorithm | Description |
---|---|
TopN | 所有其他值都会被收集并显示为 "others?"值(您可以为该值选择标签)。 |
BottomN | 如果未设置收集值的文本,则不显示该值。 |
Less than value | 收集小于指定值的系列值,并显示为 "others"值。 |
Less than percent | 收集小于指定百分比的系列值,并显示为 "others?"值。 |
Greater than value | 大于指定值的系列值被收集并显示为 "others?"值。 |
Greater than percent | 收集大于指定百分比的系列值,并显示为 "others?"值。 |
若显示前 5 个值,可按以下方式设置系列:
您将得到以下结果:
对于饼型序列,可以对某些值进行Explod处理。请在系列列表中选择系列,然后切换到 "Data processing?"选项卡:
您可以使用以下一种爆炸类型:最大值、最小值和特定值。如果选择后一种模式,则必须指定要爆炸的值。它可以是任何表达式(详见 "表达式 "章节)。例如,如果要explode Andrew Fuller's value,请使用以下表达式:
"Andrew Fuller"
您将得到以下结果:
您可以对图表进行设置,使其能够根据数据源中的数据自动创建新系列。要设置自动序列,请执行以下操作:
让我们演示一下如何创建自动序列。我们将使用 MatrixDemo 数据表获取员工每年销售额的图表。一个序列代表一年。具体操作如下
在 "Data processing?"选项卡上,选中 "Group by X value?"复选框。这是必要的,因为我们的数据源中有多个同名雇员;
在系列列表中选择图表,并在 "Data?"选项卡上设置其自动系列列:
我们将得到以下结果: