教程:向报表添加条形图(报表设计器)

条形图可用于水平显示类别数据,有助于:

  • 提高长类别名称的可读性。

  • 提高绘制为值的时间的可理解性。

  • 比较多个序列的相对值。

有关详细信息,请参阅条形图(Report Builder 3.0 和 SSRS)

学习内容

在本教程中,您将学习如何执行以下操作:

  • 定义数据源并向报表添加数据集。

  • 向报表添加条形图。

  • 设置图表的轴标签、标题和图例的格式。

要求

若要使用本教程,系统中必须安装有下列各项:

  • SQL Server Business Intelligence Development Studio.

    注意注意

    基于 Itanium 的计算机不支持 Business Intelligence (BI) Development Studio。但是,基于 x64 的计算机支持 BI Development Studio。如果已在基于 Itanium 的计算机上部署了 SQL Server 示例数据库,请使用基于 x86 或 x64 的计算机上的 BI Development Studio 修改和运行这些示例。

  • 带有 AdventureWorks2008 示例数据库的 SQL Server。

本教程的预计学时:15 分钟

创建报表服务器项目

  1. 单击**“开始”,依次指向“程序”**和 Microsoft SQL Server 2008 R2,然后单击 Business Intelligence Development Studio

  2. 在**“文件”菜单上,指向“新建”,再单击“项目”**。

  3. 在**“项目类型”列表中,单击“商业智能项目”**。

  4. 在**“模板”列表中,单击“报表服务器项目”**。

  5. 在**“名称”**中,键入“条形图教程”。

  6. 单击**“确定”**创建项目。

    该教程项目将显示在解决方案资源管理器中。

为条形图定义数据源

  1. 单击**“视图”,然后选择“报表数据”**。“报表数据”窗格将会显示在 Business Intelligence Development Studio 环境中。

  2. 在“报表数据”窗格中,单击**“新建”下拉列表,然后单击“数据源”**。

  3. 在**“数据源属性”对话框中,确保选中“嵌入连接”**。

  4. 在**“类型”**框中,选择 Microsoft SQL Server

  5. 在连接字符串文本框中,键入一个有效的连接字符串,或单击**“编辑”按钮以打开“连接属性”**对话框。

  6. 在**“连接属性”对话框的“服务器名称”**文本框中,键入或选择服务器的名称。

  7. 选择**“使用 Windows 身份验证”“SQL Server 身份验证”**,并键入有权访问 AdventureWorks2008 数据库的用户名和密码。

  8. 在**“选择或输入数据库名称”**列表框中,键入或选择 AdventureWorks2008

  9. 单击**“文本连接”**。

  10. 单击**“确定”以关闭“连接属性”对话框。在“数据源属性”**对话框中,您将会看到默认数据源名称 DataSource1 和连接字符串。

  11. 单击“确定”。新数据源将显示在“报表数据”窗格中。

为报表定义数据集

  1. 在“报表数据”窗格中,右键单击数据源,然后单击**“添加数据集”**。

  2. 在**“数据集属性”对话框中,确保为“查询类型”选中“文本”**。

  3. 在**“查询”**文本框中,输入以下查询:

    SELECT [FullName] as 'Name'
          ,[2002] as 'SalesBeforeLast'
          ,[2003] as 'SalesLastYear'
          ,[2004] as 'SalesYTD'
      FROM [Sales].[vSalesPersonSalesByFiscalYears]
    
  4. 单击“确定”。数据集字段将显示在“报表数据”窗格中。

向报表添加带有销售信息的条形图

  1. 在**“视图”菜单上,单击“工具箱”**。

  2. 双击**“图表”或将其拖到设计图面。此时将显示“选择图表类型”**对话框。

  3. 单击**“条形图”**以显示条形图列表。选择列表中的第一个条形图图标。

  4. 单击该图表以显示图表控点。拖动该图表的右下角以扩大该图表。

  5. 将**“名称”字段从“报表数据”窗格拖到该图表。“图表数据”窗格将出现在图表数据旁。将“名称”字段放入“类别组”**区域中。

  6. SalesYTDSalesLastYear 字段从“报表数据”窗格拖放到**“值”**区域中。

  7. 单击**“预览”**以运行报表。您的报表应与下面的示例相似:

教程“添加条形图”步骤 1

您将会发现该图表并不在 y 轴上标记所有类别。这是因为有一个自动算法,它会计算显示标签的间隔,从而避免标签冲突。如果要在该图表中显示所有类别,则必须将轴间隔指定为 1。

沿条形图的类别轴显示所有销售人员

  1. 切换到“设计”视图。

  2. 右键单击 y 轴,然后单击**“轴属性”**。

  3. 在**“类别轴属性”对话框的“轴选项”页中,为“间隔”**键入 1。

  4. 单击“确定”。

    注意注意

    如果轴上的姓名不可读,请考虑扩大您的图表或更改轴标签的格式设置选项。有关详细信息,请参阅设置图表上轴标签的格式(Report Builder 3.0 和 SSRS)

  5. 单击**“预览”**。您的报表应与下面的示例相似:

教程“添加条形图”步骤 2

为了提高图表值的可读性,可能需要移动图表图例。例如,在水平显示图条的条形图中,您可以更改图例的位置,将其放置在图表区的上方或下方。这可为图条提供更大的水平空间。

在条形图的图表区下方显示图例

  1. 切换到“设计”视图。

  2. 右键单击图表上的图例。

  3. 选择**“图例属性”**。

  4. 对于**“图例位置”**,请选择其他位置。例如,将图例位置设置为底部中间。

    注意注意

    您还可以在设计图面上直接将图例拖到新位置。

    如果将图例置于图表的顶部或底部,则图例的布局将会从垂直改为水平。您可以从**“布局”**下拉列表中选择不同的布局。

  5. 单击“确定”。

    注意注意

    如果图例中的姓名不可读,您可以考虑扩大您的图表或更改图例的格式设置选项。有关详细信息,请参阅设置图表上图例的格式(Report Builder 3.0 和 SSRS)

接下来,您可以更改图表标题和轴标题,还可以添加格式设置。

更改条形图的图表区上方的图表标题

  1. 切换到“设计”视图。

  2. 右键单击位于图表顶部的图表标题,然后单击**“标题属性”**。

  3. 用文本“销售人员年内迄今的销售情况与去年销售情况”替换**“标题文本”**字段。

  4. 单击该文本的外部。

  5. 单击**“预览”**。您的报表应与下面的示例相似:

    教程“添加条形图”步骤 4

最后,您可以将销售数字的格式设置为货币而非常规数字。

将水平轴上数字的格式设置为货币

  1. 切换到“设计”视图。

  2. 右键单击沿图表底部方向的水平轴,然后单击**“轴属性”**。

  3. 在**“标签格式”中的“类别”下,单击“货币”**。您还可以指定多个与货币值的格式设置方式相关的选项。

  4. 单击**“预览”**。

筛选条形图中的前 5 个值

  1. 切换到“设计”视图。

  2. 单击该图表一次以便显示“图表数据”窗格。

  3. 右键单击**“类别组”区域中的“名称”**字段。

  4. 选择**“类别组属性”**。

  5. 单击**“筛选器”**。此时将显示筛选表达式的列表。默认情况下,此列表是空的。

  6. 单击**“添加”**。此时将显示一个新的空白筛选器。

  7. 在**“表达式”**框中,键入以下表达式:

    =Sum(Fields!SalesYTD.Value)

  8. 在**“运算符”**列表框中,选择 Top N

  9. 在**“值”**框中,键入 =5

  10. 单击**“预览”**。图表中将会显示五个名字,即销售数据中的前 5 名销售人员。

按字母顺序对条形图中的姓名进行排序

  1. 切换到“设计”视图。

  2. 单击该图表一次以便显示“图表数据”窗格。

  3. 右键单击**“类别组”区域中的“名称”**字段。

  4. 选择**“类别组属性”**。

  5. 单击**“排序”**。此时将显示排序表达式的列表。默认情况下,此列表是空的。

  6. 单击**“添加”**。此时将显示一个新的排序表达式。

  7. 在**“排序依据”**框中,选择 [Name] 表达式。这与表达式 =Fields!Name.Value 等效

  8. 在**“顺序”框中,选择“从 Z 到 A”**。

  9. 单击**“预览”**。图表中将按字母顺序,从上到下显示姓名。