1.3. 图表导出

运行程序的所有图表都可以作为图片或者原始数据导出。使用 chart:export 元素来创建默认的导出菜单,默认的菜单有如下选项:

  • Download as…​ 支持的格式: PNG, JPG, SVG, PDF

  • Save as…​ 支持的格式: CSV, XLSX, JSON

  • Annotate…​ 用来在图表中添加个人注解或矢量图形。细节可以参阅:https://www.amcharts.com/export-now-supports-annotating-charts-with-text-icons-arrows/[注解插件]。

  • Print 打开标准打印设置窗口。

charts export menu 1
Figure 11. 图表导出菜单

导出菜单可以定制化,以便限制用户对图表数据的访问,示例:

<chart:export fileName="my-chart" position="TOP_RIGHT">
    <chart:menu>
        <chart:item label="PNG" title="Save as PNG" format="PNG"/>
        <chart:item label="JPG" title="Save as JPG" format="JPG"/>
    </chart:menu>
</chart:export>

这样的话,只显示选择的文件类型相应的下载按钮:

charts export menu 2
Figure 12. 图表导出菜单

可以定义如下导出设置:

  • backgroundColor – 导出图片背景色的颜色代码,默认值是 #FFFFFF

  • dataDateFormat – 将日期字符串转换成日期对象的格式(只在导出数据时有效)。

  • dateFormat – 按照给定的格式对 category 轴的时间数据做格式化(只在导出数据时有效)。

  • enabled – 启用或禁用导出功能。

  • exportSelection – 只导出选中的数据。默认值是 false

  • exportTitles – 将数据字段的名称换成定义的标题。默认值是 false

  • fileListener – 如果设置成 true,则会监听拖拽功能,将投入的图片加载作为注解。默认值是 false

  • fileName – 生成文件的文件名(根据导出格式的不同会添加相应的文件后缀)。

  • keyListener – 如果设置成 true,观察按下的键来撤销/恢复对注解的编辑。

  • position – 导出图标的位置。可能值:TOP_LEFT, TOP_RIGHT (默认), BOTTOM_LEFT, BOTTOM_RIGHT

  • removeImages – 如果设置成 true,导出时会检查并且删除区域从不同领域加载的不必要的图片。

下列属性可以用来定制化每个导出选项:

JPG
  • quality – 导出图片的质量。可能值: 01。默认值是 1

PNG, JPG, SVG, PDF
  • multiplier – 生成图片的缩放比例

CSV
  • quotes – 设置是否需要在字符串两端加上双引号。默认值是 true.

  • delimiter – 列分隔符,默认值是 "," (逗号).

  • escape – 定义是否需要转译字符串。默认值是 true.

  • withHeader – 是否带用列名称的表头。默认值是 true.

XLSX
  • dateFormat – XLSX 日期格式,别忘了在 CategoryAxis 里面设置 parseDatestrue

  • stringify – 将所有单元格的内容转化成字符串。默认值是 false

  • withHeader – 是否带用列名称的表头。默认值是 true

PDF
  • pageOrientation – 页面方向。默认值是 PORTRAIT

  • pageOrigin – 显示/隐藏生成的 PDF 的来源。默认值是 true

  • pageSize – PDF 列表的格式。默认值是 A4

此外,可以在主消息包中覆盖 label.saved.from 消息的字符串。

PRINT
  • delay – 触发打印之前的延时,单位是秒。

  • lossless – 启用/禁用打印时图像优化。默认值是 false