---
schema_version: "1"
id: 6353c1bf3734a22d838cb55db02599dea6520738bcea93239e4f1c0dd96d9621
title: PDF 文件
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/public/desktop/examples_pdf.md
canonical_url: https://help.tableau.com/current/public/desktop/zh-cn/examples_pdf.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 4d860d187840a0b9a27677511f35261c6a422d8592e2b7f25cfd8c965b0ac665
description: Connect Tableau to .pdf file data, scan for tables, and set up the data source.
---
[跳转到主要内容](#main-content)

# PDF 文件

本文介绍如何将 Tableau 连接到 .pdf 文件数据并设置数据源。

**注意**：Tableau 不支持从右到左 (RTL) 的语言。如果您的 PDF 包含 RTL 文本，则字符可能会以相反顺序显示在 Tableau 中。

## 进行连接并扫描文档表格

1. 打开 Tableau 后，在“连接”下面，单击“PDF 文件”。
2. 选择要连接到的文件，然后单击“打开”。
3. 在“扫描 PDF 文件”对话框中，指定想要 Tableau 扫描表格的文件中的页面。您可以选择扫描所有页面、仅单个页面或一系列页面中的表格。
    
    **注意：** 类似于大多数 PDF 阅读器，扫描将文件的第一页计为“第 1 页”。扫描表格时，请指定 PDF 阅读器显示的页码，而不是文档本身中可能使用的页码，该页面可能从第 1 页开始，也可能不从第 1 页开始。
    
    例如，假设您想要使用下图中的“表 1”。PDF 阅读器显示一个数字，而 .pdf 文件显示其他数字。若要正确扫描此表，请指定 PDF 阅读器显示的页码。在此示例中，您指定“第 15 页”。
    
    ![PDF 阅读器显示的页码。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_reader.png)
4. 在数据源页面上，执行下列操作：
    
    1. （可选）在页面顶部选择默认数据源名称，然后输入要在 Tableau 中使用的唯一数据源名称。例如，使用可帮助其他数据源用户推断出要连接的数据源的数据源命名约定。 默认名称是基于文件名自动生成的。
    2. 如果文件包含一个表，请单击工作表标签开始进行分析。否则，从左窗格中将表拖到画布上，然后单击工作表标签以开始分析。
        
        **关于左侧窗格中的表格**
        
        在 .pdf 文件中识别的表将被赋予唯一名称，并在扫描后显示在左侧窗格中。例如，您可能会看到像“第 1 页，表 1.”这样的表名称。表名称的第一部分指明 .pdf 文件中表格源自其中的页面。表名称的第二部分指明识别的表顺序。如果 Tableau 在一页中识别出了多个表，则表名称的第二部分可能指明以下两项之一： 
        
        - Tableau 在页面上识别出了另一个唯一的表或子表。
        - Tableau 采用另一种方式解读了页面上的表。Tableau 可能会对表提供多种解读，具体情况取决于该表在 .pdf 文件中的呈现方式。
        
        ![表格指示 .pdf 文件中表格来源的页面以及该表格的识别顺序。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_leftpane.png)

### PDF 文件数据源示例

以下是 PDF 文件数据源的示例： 

![窗口显示了有关选择导出为 PDF 的“Population”（人口）数据连接的详细信息。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf.png)

## 获取更多数据

通过添加更多表或连接到不同数据库中的数据，将更多数据提供到数据源中。

- **从当前文件添加更多数据：** 
    
    - 从左窗格中，将其他表拖到画布上，以使用联接或并集合并数据。有关详细信息，请参见[联接数据](https://help.tableau.com/current/public/desktop/zh-cn/joining_tables.htm)或[合并数据](https://help.tableau.com/current/public/desktop/zh-cn/union.htm)。
    - 如果在以上所列过程的步骤 3 中扫描的页面未在左窗格中生成您所需的表，请单击 PDF 文件连接旁边的下拉箭头，然后单击“重新扫描 PDF 文件”。此选项允许您创建新的扫描，以便您可以在 .pdf 文件中指定不同的页面来扫描表。
        
        ![用于重新扫描 PDF 文件的下拉菜单选项。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_rescan.png)
- **从不同数据库中添加更多数据：**在左窗格中，单击“连接”旁边的“添加”。有关详细信息，请参见[联接数据](https://help.tableau.com/current/public/desktop/zh-cn/joining_tables.htm)。
    
    如果左窗格中未列出您需要的连接器，请选择“数据”\>“新数据源”以添加新数据源。有关详细信息，请参见[混合您的数据](https://help.tableau.com/current/public/desktop/zh-cn/multiple_connections.htm)。

## 设置表选项

您可以设置表选项。在画布上，单击表下拉箭头，然后指定数据在第一行中是否包括字段名称。如果是这样，这些名称将成为 Tableau 中的字段名称。如果未包括字段名称，Tableau 会自动生成这些名称。您随后可以对字段进行重命名。

## 使用 Data Interpreter 清理您的数据

如果 Tableau 检测到它可以帮助优化数据源以进行分析，则会提示您使用数据解释器。数据解释器能够检测您可以使用的子表，并且能够删除以后可能会在分析中引起问题的唯一格式。有关详细信息，请参见[使用 Data Interpreter 清理 Excel、CSV、PDF 和 Google Sheets 中的数据](https://help.tableau.com/current/public/desktop/zh-cn/data_interpreter.htm)。

## 合并 .pdf 文件中的表

您可以在文件中合并表。有关合并的详细信息，请参见[合并数据](https://help.tableau.com/current/public/desktop/zh-cn/union.htm)。

使用通配符搜索来合并表时，结果范围限定为在连接到的初始文件中扫描的页面。例如，假设您具有三个文件：A.pdf、B.pdf 和 C.pdf。您连接到的第一个文件是 A，并且将表的扫描限制为第 1 页。当使用通配符搜索来合并文件 B 和 C 中的表时，并集中包含的其他表只能来自 B 的第 1 页和 C 的第 1 页。

## 使用 .pdf 文件的提示

以下提示可帮助您在 Tableau 中使用 .pdf 文件。

- **使用标准表。**
    
    通常，Tableau 对使用表格格式的标准表的处理效果最好。
    
    理想情况下，.pdf 文件中的表在一行中具有列标题，在一行中具有行值，如下面的示例中所示。
    
    ![显示美国城市自行车通勤详情的标准表格示例。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_table_standard.png)
    
    表中或表周围使用的颜色和阴影可能会影响表的识别方式。
    
    具有独特格式设置的表可能需要在 Tableau 之外进行一些清理或手动编辑。独特的格式设置可能包括分层标题、跨多行的标题名称、跨多行的行值、斜置标题和堆叠的表，如下面的示例中所示。
    
    <table class="table--plain"><tbody><tr><td><img src="https://help.tableau.com/current/public/desktop/zh-cn/Img/example_pdf_table_multiplelines.png" alt="示例表包含多行内容，显示了纽约市执照违规的详细信息。"></td><td><img src="https://help.tableau.com/current/public/desktop/zh-cn/Img/example_pdf_table_angleheaders.png" alt="带有倾斜标题的示例表格显示了各种甜甜圈蛋糕的营养价值。"></td><td><img src="https://help.tableau.com/current/public/desktop/zh-cn/Img/example_pdf_table_stacked.png" alt="示例堆叠表显示了纽约市驾驶执照和汽车服务基地的信息。"></td></tr></tbody></table>
    
    注意：Tableau 不支持连接到扫描（光学字符识别）软件生成的 .pdf 文件。
- **验证数据。**
    
    确保验证 Tableau 在 .pdf 文件中标识的表中的数据。您可以使用数据网格或结果工作簿（如果您使用了数据解释器）来验证数据。
- **避免跨多页的表。**
    
    如果 .pdf 文件包含跨多页的表，Tableau 会将该表解读为多个表。若要解决此问题，请使用并集来合并这些表。有关详细信息，请参见[合并数据](https://help.tableau.com/current/public/desktop/zh-cn/union.htm)。
- **重命名其文件名包含 unicode 字符的 .pdf 文件。**
    
    连接到文件名中包含 unicode 字符的 .pdf 文件后，您可能会看到以下错误。
    
    ![Unicode 错误，表示与数据源通信时发生错误，指定的页面或范围不存在或不包含表格。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_unicode_error.png)
    
    若要解决此问题，请使用非 unicode 字符重命名文件，并再次连接到 .pdf 文件。
- **不要使用密码保护的 .pdf 文件。**
    
    连接到 .pdf 文件并在其中扫描表之后，您可能会看到以下错误。
    
    ![Unicode 错误，表示与数据源通信时发生错误，指定的页面或范围不存在或不包含表格。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_unicode_error.png)
    
    如果 .pdf 文件受密码保护，并且 Tableau 无法访问其内容，则会显示此错误。Tableau 不支持连接到密码保护的 .pdf 文件。
- **以不同方式或不正确方式解读的别名值。**
    
    在数据网格中，您可能会注意到，某些值的解读方式与 .pdf 文件不同。通过使用别名来重命名字段内的特定值，您可以纠正这种解读。
    
    例如，假设您在连接到 .pdf 文件后看到下表。某些州/省/市/自治区被解读为小写形式，以蓝色突出显示。
    
    ![一张列出城市的表格，其中部分州/省/市/自治区的缩写以小写形式显示，并以蓝色突出显示。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_alias.png)
    
    通过使用别名将小写形式的缩写更改为大写形式的缩写，您可以解决此问题。为此，请单击列名称旁边的下拉箭头，并选择“别名”。
- **解决解读为表值的列标题。**
    
    在数据网格中，您可能还会注意到 .pdf 文件中的某些列标题反而被解释为表值。如果您的 .pdf 文件包含具有唯一格式或层次标题的表，则可能会发生这种情况。在这种情况下，先尝试使用数据解释器。如果 Data Interpreter 未解决该问题，请考虑手动将列重命名其适当的名称，并使用数据源筛选器来筛选被视为值的标题名称。
    
    例如，假设您在连接到 .pdf 文件后看到下表。.pdf 文件中的表标题被解释为表值，以蓝色突出显示。
    
    ![示例表的表头被错误解读为表值，并以蓝色突出显示。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_dirtyheader.png)
    
    一种解决此类标题问题的方法是按照类似于以下的步骤进行操作：
    
    1. 双击列名称，然后将 F1 重命名为“Year”（年份）。对 F2 至 F4 重复此步骤，分别命名为“Coal”（煤炭）、“Gas”（天然气）和“Oil”（石油）。
    2. 单击“Year”（年份）列的数据类型图标，并将其更改为数值数据类型。这会导致将此列中的非数值转换为空值。
    3. 在数据源页面的右上角，单击“添加”，单击“添加”按钮，然后选择“Year”（年份）字段。
    4. 在“筛选器”对话框中，同时选中“Null”和“排除”复选框。
        
        ![“筛选器”对话框显示“Null”和“排除”复选框。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_null_exclude.png)
        
        “Year”（年份）列中包含 Null 值的行将从数据网格中删除，从而影响表中其他列的行。
        
        ![解决标题问题后的示例表。](/tableau/current/zh-cn/public/desktop/zh-cn/Img/example_pdf_cleanheader.png)

## 关于 .ttde 和 .hhyper 文件

在计算机的目录中导航时，您可能会注意到 .ttde 或 .hhyper 文件。当您创建连接到数据的 Tableau 数据源时，Tableau 会创建 .ttde 或 .hhyper 文件。此文件（也称为阴影数据提取）用于帮助提高 Tableau Desktop 中的数据源加载速度。尽管阴影数据提取包含类似于标准 Tableau 数据提取的基础数据和其他信息，但阴影数据提取将以其他格式保存，并且无法用于恢复数据。

**注意**：2024.2 以后的 Tableau 版本不再支持 .tde 文件。现在所有数据提取都为 .hyper 格式。

## 另请参见

- [设置数据源](https://help.tableau.com/current/public/desktop/zh-cn/datasource_prepare.htm) – 向此数据源中添加更多数据，或者在分析数据之前准备数据。
- [构建图表和分析数据](https://help.tableau.com/current/public/desktop/zh-cn/design_and_analyze.htm) – 开始数据分析。