Docs 菜单
Docs 主页
/
Atlas 图表
/ / /

嵌入式Charts SDK选项

在此页面上

  • 嵌入图表选项
  • 图表配置
  • getCustomizableAxes()
  • setAutoRefresh(boolean)
  • setPreFilter(object)
  • setFilter(object)
  • setMaxDataAge(number)
  • setRenderingSpecOverride(object)
  • setTheme("dark" | "light")
  • 例子
  • 渲染规范选项
  • 条件格式化操作符
  • 渠道示例
  • 条件格式示例

嵌入式 SDK 提供了JavaScript createChart() 在网页中呈现图表的方法。您可以使用选项来控制图表的高度和宽度,以及刷新间隔等。

例子

以下示例使用带选项的 createChart()方法。

const chart = new ChartsEmbedSDK({}).createChart({
baseUrl: 'https://charts.mongodb.com/charts-rendering-spec-project-aygif',
chartId: '38de4b38-42ea-422a-b702-a0220c8885e8',
height: 300,
width: 400,
renderingSpec: {
version: 1,
title: 'Customized chart title',
description: 'Customized chart description',
axes: {
y: {
logScale: true
},
},
channels: {
x: {
labelOverride: "New field label"
},
y: {
numberSuffix: "%"
}
},
options: {
labelSize: 150,
lineSmoothing: 'monotone'
}
}
});
await chart.render(embedContainer);

createChart()方法采用以下选项:

选项
类型
说明
必需?

autoRefresh

布尔

指示图表是否自动刷新的标志。 如果省略,Atlas Charts不会自动刷新。

将此选项与maxDataAge选项一起使用可配置仪表盘自动刷新频率。

no

background

字符串

应用于图表的背景颜色,而不是theme背景。 您可以指定:

  • 颜色十六进制代码

  • CSS颜色名称

  • 使用以下值的透明背景 transparent

如果省略,背景颜色默认为当前的theme

  • #FFFFFF 对于light主题,或

  • #21313Cdark主题。

no

baseUrl

字符串

图表的基本 URL。

chartID

字符串

图表的唯一标识符。

preFilter

对象

要应用图表的预过滤器。 预筛选器在图表查询执行开始之前运行。

no

filter

对象

要应用于图表的筛选器

no

getUserToken

对象

返回base64编码的JSON web token令牌的函数。Charts 会验证此令牌,以确定 Charts 是否呈现经过身份验证的图表。

如果启用了身份验证访问,则仅当 Charts 可以使用配置的身份验证提供者验证令牌时,Charts 才会呈现经过身份验证的图表视图。

如果令牌无效,并且您启用了未经身份验证的访问权限, Atlas Charts会呈现未经身份验证的图表。 否则, Charts不会呈现图表。 要学习;了解更多信息,请参阅使用自定义JSON web token提供程序嵌入经过身份验证的图表。

no

height

数字

图表的高度。 如果省略,则图表默认为其容器的高度。 如果提供的值没有单位,则单位默认为像素 (px)。

no

maxDataAge

数字

指定加载或刷新图表时从缓存加载的数据的最长期限。 如果省略,Atlas Charts 将使用缓存中的数据呈现图表,前提是该数据的历史时间少于一小时。

如果缓存中的数据超过一小时,则 Charts 会向数据源查询最新数据,刷新缓存,并使用此数据呈现图表。

要了解 Atlas Charts 在根据autoRefreshmaxDataAge值加载或刷新图表时如何从缓存加载数据,请参阅刷新和数据缓存行为。

no

renderingSpec

对象

指定如何自定义嵌入式图表的呈现规范。

有关可用自定义项的列表,请参阅渲染规范选项。

no

showAttribution

布尔

指示是否在图表下方显示 MongoDB徽标的标志。 默认为true

no

theme

字符串

要使用的图表主题。 有效选项包括:

  • light 用于带有深色文本和图表元素的浅色背景,或

  • dark 用于带有浅色文本和图表元素的深色背景。

默认值为 light

no

width

数字

图表的宽度。

如果省略,则图表默认为其container的宽度。如果提供的值没有单位,则默认为像素 (px)。

no

创建图表后,您可以通过调用ChartsEmbedSDK.createChart({ ... })返回的Chart实例上的方法来控制图表的配置。

返回嵌入式图表的图表轴。

指定图表是否自动刷新。 如果省略,Atlas Charts不会自动刷新。

将此方法与setMaxDataAge方法结合使用可配置图表的刷新频率。

查询预筛选器应用于嵌入式图表或嵌入式仪表盘盘中的图表。 此方法接受一个带有有效查询运算符的对象。 将此预筛选器引用的字段添加到Embed Chart模式窗口的Allowed filter fields列表中。 空文档{}表示省略预过滤器。

要学习;了解有关启用图表嵌入和应用预筛选器的更多信息,请参阅嵌入教程。

查询筛选器应用于嵌入式图表或嵌入式仪表盘中的图表。 此方法接受一个带有有效查询操作符的对象。此筛选器引用的任何字段都必须添加到Embed Chart模式窗口的Allowed filter fields列表中。 空文档{}相当于没有筛选器。

要学习;了解有关启用图表嵌入和应用筛选器的更多信息,请参阅嵌入教程。

指定加载或刷新图表时从缓存加载的数据的最长期限。 如果省略,Atlas Charts 将使用缓存中的数据呈现图表,前提是该数据的历史时间少于一小时。

如果缓存中的数据超过一小时,则 Charts 会向数据源查询最新数据,刷新缓存,并使用此数据呈现图表。

要了解 Atlas Charts 在根据setAutoRefreshsetMaxDataAge值加载或刷新图表时如何从缓存加载数据,请参阅刷新和数据缓存行为。

指定如何自定义图表。

有关可用自定义项的列表,请参阅渲染规范选项。

设置嵌入式图表的当前主题。 将主题设置为dark时,需要确保图表的背景颜色具有适当的对比度,以使信息保持可见。

提示

另请参阅:

以下示例将名为chart的 Chart 实例配置为使用dark主题并每 60 秒刷新一次。

chart.setTheme("dark");
chart.setAutoRefresh(true);
chart.setMaxDataAge(60);

您可以为renderingSpec对象指定以下选项:

注意

version之外的所有选项都是可选的。

选项
类型
说明

对象

描述如何自定义Atlas Charts坐标轴的对象。

axes
.labelOverride

字符串

用于替换当前坐标区标签的值。

要了解更多信息,请参阅标签覆盖。

axes
.labelAngle

枚举

显示标签的角度。

值可以是以下之一: 'vertical''horizontal''diagonal'

这适用于所有柱状图、100% 堆叠面积图、面积离散图、线离散图、分组组合图、堆叠组合图和热图。

要了解更多信息,请参阅调整 X 轴标签角度。

axes
.logScale

布尔

指示是否对图表上的数据值使用对数刻度的标志。

这仅适用于分组柱形图、彩色柱形图、分组条形图、彩色条形图、连续线图、离散线图、分组组合图和散点图。

要了解更多信息,请参阅对数刻度。

axes
.scaleMax

编号 | false

要在图表上显示的最大值。 false使该选项处于默认状态。

这只适用于分组柱形图、彩色柱形图、堆叠柱形图、分组条形图、彩色条形图、堆叠条形图、面积连续图、面积离散图、线连续图、线离散图、散点图、分组组合图、堆叠组合图和仪表盘图。

要了解更多信息,请参阅最大值和最小值。

axes
.scaleMin

编号 | false

要在图表上显示的最小值。 false使该选项处于默认状态。

这只适用于分组柱形图、彩色柱形图、堆叠柱形图、分组条形图、彩色条形图、堆叠条形图、面积连续图、面积离散图、线连续图、线离散图、散点图、分组组合图、堆叠组合图和仪表盘图。

要了解更多信息,请参阅最大值和最小值。

渠道

对象

描述如何自定义Atlas Charts渠道的对象。

channels
.labelOverride

字符串

用于替换当前渠道标签的值。

要了解更多信息,请参阅字段标签覆盖。

channels
.numberDecimals

数字

对每个数值数据值或标签进行四舍五入的小数位数。

要了解更多信息,请参阅数字格式。

channels
.numberMultiplier

数字

要与每个数值数据值或标签相乘的数字。

要了解更多信息,请参阅数字格式。

channels
.numberPrefix

字符串

要添加到每个数值数据值或标签的字符串。

要了解更多信息,请参阅数字格式。

channels
.numberSuffix

字符串

要附加到每个数值数据值或标签末尾的字符串。

要了解更多信息,请参阅数字格式。

channels
.numberThousandsSeparators

布尔

指示是否将逗号显示为数值数据值的千位分隔符的标志。

要了解更多信息,请参阅数字格式。

channels
.plotOnSecondaryAxis

布尔

指示是否在辅助 Y 轴上绘制与渠道对应的字段集的标志。

这仅适用于面积连续图、分组柱形图、分组组合图、堆叠组合图、线连续图和线离散图。

要了解更多信息,请参阅从Y 轴。

channels
.wrapText

布尔

指示是否为表格Charts文本换行的标志。

要了解更多信息,请参阅自动换行。

条件格式

对象

描述如何设置图表某一部分格式的对象。

要了解更多信息,请参阅条件格式。

conditionalFormatting
.applyToEntireRow

布尔

指示是否将指定格式应用于整行的标志。

conditionalFormatting
.backgroundColor

枚举 |字符串

指示如何自定义背景颜色的对象。

值可以是以下值之一:

条件规则
类型
Values

'continuous'

枚举

'redwhitegreen'
'redwhiteblue'
'yellowgreen'
'redyellowgreen'
'greenwhite'
'bluewhite'
'redwhite'

'discrete'

字符串

类似于 RGB 颜色模型、十六进制颜色或颜色名称。

如果指定'transparent' ,则应用先前的颜色(如果有)。

conditionalFormatting
.conditions

阵列

这适用于'continuous''discrete'条件规则。

条件规则
说明

'continuous'

描述如何格式化targetChannel的对象。

这适用于表格Atlas Charts。

'discrete'

描述如何格式化targetChannel的对象。

这适用于表格图表和数字图表。

conditionalFormatting
.conditions
.operator
NumericOperator
NumericBinnedOperator
StringOperator
StringRegexOperator
DateOperator
DateBinnedOperator

应用于'discrete'条件规则的操作符。

这适用于表格图表和数字图表。

要学习;了解有关有效操作符的更多信息,请参阅条件格式操作符。

conditionalFormatting
.conditions
.targetChannel

字符串

'continuous''discrete'条件规则接受连续颜色的表列。

这适用于'continuous''discrete'表格图表以及'discrete'数字图表。

conditionalFormatting
.conditions
.targetType

枚举

'discrete'条件规则应用operatorvalue的表图表的一部分。

值可以是以下之一: 'CHANNEL''ROW_INDEX''COLUMN_NAME''CELL_VALUE''ROW_TOTAL''COLUMN_TOTAL''COLUMN_ID'

conditionalFormatting
.conditions
.value
number
string
array of strings
object

要应用于'discrete'条件规则的operator的值。 数据类型取决于您选择的operator

这适用于表格图表和数字图表。

conditionalFormatting
.fontStyle

枚举

用于'discrete'条件规则的字体。

值可以是以下之一: 'italic''normal'

这适用于表格图表和数字图表。

conditionalFormatting
.fontWeight

枚举

'discrete'条件规则的字体粗细。

值可以是以下之一: 'bold''normal'

这适用于表格图表和数字图表。

conditionalFormatting
.reverseColor

布尔

指示是否为'continuous'条件规则反转所选连续颜色的标志。

这仅适用于表格Atlas Charts。

conditionalFormatting
.textColor

字符串

'discrete'条件规则的文本颜色。

值必须是类似于 RGB 颜色模型、十六进制颜色或颜色名称的字符串。 如果指定'auto' ,则不应用任何颜色。

conditionalFormatting
.textDecoration

枚举

'discrete'条件规则的文本修饰。

值可以是以下之一: 'underline''line-through''underline line-through''initial'

这适用于表格图表和数字图表。

conditionalFormatting
.type

枚举

图表使用的条件规则的类型。

值可以是以下之一: 'discrete''continuous'

'discrete'条件规则适用于表格图表和数字图表。

'continuous'条件规则适用于表格Atlas Charts。

描述

字符串

图表说明。

选项

对象

描述如何自定义图表选项的对象。

options
.categoryLabels

布尔

指示是否在环形图中显示类别标签的标志。

要了解更多信息,请参阅显示或隐藏类别标签。

options
.colorPalette

对象 | false

描述如何自定义调色板的对象。 false会取消您在图表生成器中设置的任何自定义调色板。

要了解更多信息,请参阅调色板自定义。

options
.colorPalette
.channels

阵列

接收自定义颜色的渠道名称。

options
.colorPalette
.color

对象

描述如何自定义调色板的对象。

这适用于在系列渠道中可以具有多个字段的所有Atlas Charts类型:除彩色条形图之外的所有条形图、除彩色柱状图和 K 线图之外的所有柱形图、分组组合、堆叠组合、所有折线图、所有面积图和环形图。

options
.colorPalette
.marks

阵列

对系列渠道中的字段值进行编码以接收自定义颜色。

这适用于在一个渠道中可以有多个系列的所有图表类型。

对于包含值positivenegative的数组,这只适用于 K Atlas Charts。

options
.colorPalette
.reverseColor

布尔

指示是否反转连续连续颜色的标志。

options
.colorPalette
.type

枚举

图表使用的调色板类型。

值可以是以下之一: 'discrete''continuous'

'discrete'调色板适用于以下图表类型:分组条形图、堆叠条形图、100% 堆叠条形图、分组柱形图、堆叠柱形图、100% 堆叠柱形图、面积连续图、面积离散图、100% 堆叠面积图、折线连续图、折线图离散、K 线图、散点图、环形图、地理散点图、词云图、仪表盘、分组组合和堆叠组合。

'continuous'调色板适用于以下图表类型:彩色柱形图、彩色条形图、地理热图、地理区域分区图和热力图。

options
.colorPalette
.values

阵列

颜色值,用于自定义单系列图表的颜色或多系列图表的channelsmarks

options
.labelSize

编号 | false

要将标签更改为的大小。 大小应介于50200之间。 false相当于将大小设置为100 ,并使该选项以其默认状态运行。

要了解更多信息,请参阅调整标签大小。

options
.legendPosition

枚举

相对于图表的图例放置位置。 这仅适用于支持图例的Atlas Charts。

值可以是以下之一: 'right''bottom''top'

要了解更多信息,请参阅自定义图例。

options
.lineSmoothing

枚举

Charts 用于在图表上绘制线条的方法。

值可以是以下之一: 'linear''monotone''step-before''step-after'

这仅适用于面积连续图、面积离散图、100% 堆叠面积图、线连续图、线离散图、分组组合图和堆叠组合图。

要了解更多信息,请参阅平滑线条。

options
.markers

布尔

指示是否显示表示各个数据点的可见数据标记的标志。

要了解更多信息,请参阅显示或隐藏数据标记。

options
.textSize

编号 | false

图表上文本的大小。 false使该选项处于默认状态。

要了解更多信息,请参阅调整表格文本大小。

options
.totalsColumn

布尔

指示是否显示每列总和的标志。

要了解更多信息,请参阅切换表行和列总计。

options
.totalsRow

布尔

指示是否显示每行总和的标志。

要了解更多信息,请参阅切换表行和列总计。

options
.valueLabels

枚举

Charts 用于显示数据点的精确值的方法。

值可以是以下之一: 'value''percentage'

这适用于除 100% 堆叠条形图之外的所有条形图、除 100% 堆叠柱形图之外的所有柱形图、面积连续图、面积离散图、100% 堆叠面积图、线连续图、线离散图、分组组合图和堆叠组合图。

要了解更多信息,请参阅标签覆盖。

标题

字符串

图表标题。

版本

数字

呈现规范的版本。 第一个也是当前版本是1

这是必填字段。

下表显示了可用于条件格式的操作符、它们适用的数据类型以及可能的值。

Operator
类型
Values

DateBinnedOperator

对象

BINNED_DATE_AFTER, BINNED_DATE_AFTER_OR_INCLUDES , BINNED_DATE_BEFORE , BINNED_DATE_BEFORE_OR_INCLUDES , BINNED_DATE_INCLUDES

该对象必须具有以下键:

date: string
time: string

DateOperator

对象

DATE_AFTER, DATE_BEFORE , DATE_EXACTLY , DATE_ON_OR_AFTER , DATE_ON_OR_BEFORE

该对象必须具有以下键:

date: string
time: string

NumericBinnedOperator

数字

BINNED_NUMBER_GREATER_THAN, BINNED_NUMBER_GREATER_THAN_OR_INCLUDES , BINNED_NUMBER_INCLUDES , BINNED_NUMBER_LESS_THAN , BINNED_NUMBER_LESS_THAN_OR_INCLUDES

NumericOperator

数字

NUMBER_EQUAL_TO, NUMBER_GREATER_THAN, NUMBER_GREATER_THAN_OR_EQUAL_TO, NUMBER_LESS_THAN, NUMBER_LESS_THAN_OR_EQUAL_TO, NUMBER_NOT_EQUAL_TO, NUMBER_RANKED_IN_BOTTOM, NUMBER_RANKED_IN_BOTTOM_PERCENT, NUMBER_RANKED_IN_TOP, NUMBER_RANKED_IN_TOP_PERCENT

StringOperator

字符串 |字符串数组

STRING_CONTAINS, STRING_EMPTY, STRING_EQUAL_TO, STRING_NOT_CONTAINS, STRING_NOT_EMPTY, STRING_NOT_EQUAL_TO, STRING_ONE_OF, STRING_STARTS_WITH

StringRegexOperator

对象

STRING_REGEX

该对象必须具有以下键:

source: regex string
flags: string

flag的值可以是以下值之一:

说明

'i'

不区分大小写。

'm'

多行。

'x'

扩展。

's'

单行。

以下示例使用以下选项配置名为chart的 Chart 实例:

  • 使用1版本的呈现规范。

  • x编码渠道更新为:

    • 请勿使用逗号作为千位分隔符。

    • 所有数值均以$开头。

  • 更新y渠道,以%结尾所有数值。

  • color编码渠道更新为:

    • 所有小数值四舍五入到小数点后两位。

    • 将所有数值乘以 2。

  • 使用具有rainbow颜色的continuous调色板类型,反转所选的连续颜色。

await chart.setRenderingSpecOverride({
version: 1,
channels: {
x: {
numberThousandsSeparators: false,
numberPrefix: '$',
},
y: {
numberSuffix: '%',
},
color: {
numberDecimals: 2,
numberMultiplier: 2,
},
},
options: {
colorPalette: {
type: 'continuous',
color: 'rainbow',
reverseColor: true,
},
},
});

以下示例使用以下选项配置名为chart的 Chart 实例:

  • 使用1版本的呈现规范。

  • 对值大于200CHANNEL执行以下条件格式化:

    • 使用'discrete'条件格式规则。

    • 将背景颜色设置为 RGB 颜色模型,其中红色为 240,绿色为 209,蓝色为 117。

    • 将文本颜色设置为red

    • 将字体样式设置为'italic'

    • 'underline'修饰文本。

  • 对于value_series_0列:

    • 使用'continuous'调色板。

    • 将背景颜色设置为redyellowgreen

    • 反转所选的连续颜色。

await chart.setRenderingSpecOverride({
version: 1,
conditionalFormatting: [{
type: 'discrete',
backgroundColor: 'rgb(240, 209, 117)',
textColor: 'red',
fontStyle: 'italic',
fontWeight: 'bold',
textDecoration: 'underline',
applyToEntireRow: false,
conditions: [{
operator: 'NUMBER_GREATER_THAN',
targetType: 'CHANNEL',
targetChannel: 'value',
value: 200,
}],
},{
type: 'continuous',
backgroundColor: 'redyellowgreen',
reverseColor: true,
conditions: [{ targetChannel: 'value_series_0' }],
}],
});

后退

选项