复合图表

  

概览

您可以将多种图表类型与折线图K 线图标记结合使用,以突出显示数据趋势或显示差异。当您在条形图、散点图或其他图表类型中添加折线或 K 线标记时,生成的图表称为复合图表。某些复合图表看起来是两种图表类型的组合,例如,带有跟踪线的条形图:

带有跟踪线的条形图表

而其他图表类型则看起来像是全新的图表类型,例如箱形图表:

箱形图.

创建复合图表

所有复合图表均由一种或多种基本图表类型(折线图、散点图、条形图或雷达图表)以及一组或多组标记组成。这些标记需要数据才能放置在图表上。有时,您可以使用在图表上绘制条形或点时所用的相同数据系列,但通常希望标记具有各自的独立数据集。如果您希望图表为基本图表和标记设置不同的数据系列,则必须隐藏基本图表中的标记数据(这样基本图表就不会尝试使用这些数据绘制更多条形或线条)。请按照以下说明执行操作:

  1. 将标记数据系列添加到 chd 参数的末尾。 例如,如果您的条形图包含数据 chd=t:30,10,20,您可以为线标记添加新数据,如下所示:chd=t:30,10,20|60,40,50
  2. 在基本图表中隐藏额外标记数据。如果您只将跟踪线的额外数据系列添加到条形图中,图表会将其显示为一系列新的条形。为防止出现这种情况,您必须隐藏这个额外的数据系列。如需隐藏数据系列,请在 chd 格式描述符后添加一个数字,例如 chd=t1:30,10,20|60,40,50。 此数字用于告知 Chart API 要使用 多少个数据系列来为相应基本图表类型(由 cht 参数定义,即条形图、折线图的数据点等)绘制元素。绘制图表时,该图表类型将忽略任何其他数据系列。请注意,此数字从 1 开始,而不是从 0 开始。因此,t1 表示“仅使用第一个数据系列绘制条形”,t2 表示“仅使用前两个数据系列绘制条形”,依此类推。
    1. 注意
      1. 散点图 - 散点图隐藏数据的方式有所不同;如需了解详情,请参阅相关文档。
      2. lxy 折线图 - 指定要显示的偶数系列(t0t2t4 等)。这是因为 lxy 图表中的每条线都由两个数据系列描述:一个表示 x 值,另一个表示 y 值。
  3. 使用隐藏的数据系列绘制K 线标记线条标记或其他标记。链接部分将介绍如何绘制标记。将隐藏的数据系列引用为标记的来源。您可以根据需要添加任意数量的其他隐藏数据系列,并将其用于其他图表标记。

以下是我们刚刚介绍的图表:

带有折线标记的条形图表
cht=bvg
chd=t1:30,10,20|60,40,50
chm=D,0033FF,1,0,5,1

 

图表类型

以下是标记类型列表,以及可与这些标记配合使用的图表类型:

标记类型 支持该标记的基本图表类型
折线图 折线图散点图条形图雷达图
K 线 LineBar
所有其他 折线图散点图条形图雷达图

以下是一些您可以创建的复合图表的类型示例:

图表类型 说明 示例
折线图 折线标记可用于显示许多其他图表类型中的趋势。 带有折线标记的条形图表带有折线标记的条形图表
K 线图 K 线图表通常用于显示财务数据。 带有一条橙色折线和四个金融标记的折线图表。
箱形图

箱形图表可将数据以四等分组进行显示。

带有一条橙色折线和四个金融标记的折线图表。
嵌入式图表 您可以将一个图表嵌入另一个图表中。 嵌入式图表
其他标记 您可以在任何可接受的基本图表类型中隐藏标记数据,并将其与您喜欢的任何其他类型的标记一起使用。
chd=t1:
  10,20,30,40,50,60,70,80
  5,10,15,20,25,30,35,40,45,50
chm=o,000000,1,-1,5

返回页首

 

折线图

您可以在折线图scatter条形图雷达图中添加线条,以突出趋势。

底座类型 + 标记类型 说明 示例
条形 + 线条

这是一个带有轨迹线的条形图。前两个数据系列用于堆叠条形,其余数据系列用于绘制折线。chd=s2 表示图表应仅使用前两个数据系列绘制条形。该线条使用第三个数据系列。

  • chd=s2:1XQbnf4,EWoQMUB,9halxp9 - 简单编码,其中前两个数据系列用于绘制条形,最后一个数据系列用于线条。
  • chm=D,0033FF,2,0,5,1 - 轨迹线 (D),蓝色,数据来自序列索引 2,所有点 (0),线宽 5 像素,Z 轴顺序为 1。
带有折线标记的条形图表
chm=
  D,0033FF,2,0,5,1
chd=s2:
  1XQbnf4,
  EWoQMUB,
  9halxp9
散点图 + 折线图 您可以在散点图中添加一条线来显示平均值。请注意,散点图隐藏标记数据的方式有所不同;请参阅散点图表了解详情。
chd=t:
  12,16,16,24,26,28,41,51,66,68,13,45,81|
  16,14,22,34,22,31,31,48,71,64,15,38,84
chm=
  o,0000FF,0,-1,0|
  o,FF0000,0,0:9:,5|
  D,000000,1,10:,1,-1
条形 + 线条

下面是另一个堆叠条形图,其中绘制了一条独立的折线。

带有折线标记的条形图表
cht=bvs
chd=t2:
  0,10,20,30,20,70,80|
  0,20,10,5,20,30,10|
  10,0,20,15,60,40,30
chm=D,76A4FB,2,0,3
长条 + 圆圈 与上一个图表相同,但使用圆形标记,而不是折线标记。我们指定了每 0.5 个数据值,并在虚线中添加了经过计算的中间点。 带有折线标记的条形图表
cht=bvs
chd=t2:
  0,10,20,30,20,70,80|
  0,20,10,5,20,30,10|
  10,0,20,15,60,40,30
chm=o,76A4FB,2,-.5,10

返回页首

 

K 线图

K 线图表至少需要四个数据系列才能绘制 K 线,对于任何其他图表元素,还需要具有额外的系列。K 线图可以仅显示一组 K 线标记,也可以将 K 线标记与条形图或折线图相结合,如下所示:

底座类型 + 标记类型 说明 示例
折线图(隐藏)+ K 线图

本示例中的图表仅显示了 K 线标记。

  • chd=t0 - 0 表示对基本图表类型(此处为折线图)隐藏所有数据系列,因此只绘制 K 线图。每个系列中的第一个值和最后一个值均为 -1,表示缺少值,以避免绘制第一个或最后一个 K 线,否则,这些值会与轴或图表边距重叠并被截断。
  • chm=F,0000FF,0,-1,20 - F 表示 K 线标记(以前称为“财务标记);0000FF 表示在值下降时标记为蓝色;0 表示 K 线数据从数据系列 0 开始;-1 表示所有点上的标记(我们也可以在此处指定 0:4 以隐藏第一个和最后一个 K 线,而不是使用 -1 数据值);20 表示 K 线的宽度。
基本的 K 线图表
cht=lc
chd=t0:
  -1,5,10,7,12,-1|
  -1,25,45,47,24,-1|
  -1,40,30,27,39,-1|
  -1,55,63,59,80,-1
chm=F,0000FF,0,-1,20
折线图 + K 线图

下面是一个包含 K 线标记的折线图示例。

系统提供了五个数据系列;第一个用于图表类型(折线图),其余的“隐藏”数据系列用于 K 线标记。chd=t1 参数指定仅针对第一个系列用于该图表类型(折线图)。

我们在 <which_points> 值中使用了 1:4 以省略第一个 K 线标记和最后一个 K 线标记,因为图表区域的边界剪裁了第一个 K 线和最后一个 K 线。

chm 参数使用语法 F,<declining_color>,<data_series_index>,<which_points>,<width>,<order> 指定 K 线标记

带有一条橙色折线和四个金融标记的折线图表。
cht=lc
chd=t1:
  20,10,15,25,17,30|
  0,5,10,7,12,6|
  35,25,45,47,24,46|
  15,40,30,27,39,54|
  70,55,63,59,80,6
chm=
  F,,1,1:4,20

折线图 + K 线图

另一个 K 线图示例,但其中设置了自定义填充颜色。

带有折线标记的条形图表
chd=t1:
t1:
  90,80,70,50,40,30,20,10|
  0,5,10,0,5,10,0|2,15,20,5,15,40,0|
  5,35,20,2,35,20,0|
  15,40,30,15,40,50,0
chm=
  F,000000,1,1:-2,20
条形图 + K 线图

右侧的示例是带有 K 线标记的条形图表。

我们在此处显示了第一个和最后一个 K 线标记,这是因为条形添加了足够的间距,以防止图表边界裁剪它们。

带有一条橙色折线和四个金融标记的折线图表。
cht=bvg
chd=t1:
  20,10,15,25,17,30|
  0,5,10,7,12,6|
  35,25,45,47,24,46|
  15,40,30,27,39,54|
  70,55,63,59,80,6
chm=
  F,,1,1:4,20

返回页首

 

箱形图表

箱形图(也称为箱形图箱形图和胡须图)是一种将一个或多个系列划分为四分位的图表类型(四分位是跨度占值范围的 25% 的组,但可能的离群值除外)。箱形图表与 K 线图类似,但在 K 线底部和顶部添加了标记,并且增加了第 50 百分位标记。

箱形图表完全由标记组成,如下所示:

K 线标记
chm=
  F,0000FF,0,1,10
K 线标记
chm=
  H,0000FF,0,1,1:10|
  H,0000FF,3,1,1:10|
  H,0000FF,4,1,1:10
K 线标记
chm=
  o,FF0000,5,,5|
  o,FF0000,6,,5
K 线标记
一组 K 线标记 (chm=F),用于表示框的正文: 一组长度可调的水平线形标记 (chm=H),用于表示最小、第 50 和第 100 百分位线: (可选)一些圆形标记 (chm=o),用于显示数据集中的离群值。 将上述各部分结合在一起,即可得到一个箱形图表!

箱形图表的基本图表类型是任意条形图类型bhsbvsbhgbvg)或折线图类型lclslxy)。但是,如果您通过在数据格式参数中添加 0 来隐藏基本图表类型(例如:chd=t0:chd=s0:),则选择哪种图表类型并不重要。

一个箱形图表必须至少包含五个数据系列:四个用于分组以及最大和最小标记;一个用于 50% 标记;另外,您想要使用的任何其他标记(例如离群标记)包含任何其他数据系列,下面是推荐的系列图书顺序。请注意,如果系列 1 中的值大于系列 2 中的相应值,则系统会以 chm=F 标记颜色填充框;如果系列 1 中的值小于系列 2 中的值,则该框将处于未填充状态。 如需了解详情,请参阅 K 线标记

未填充箱形的数据系列顺序:

  1. 最小值
  2. 25% 标记(75% 用于已填充箱形)
  3. 75% 标记(25% 用于已填充箱形)
  4. 最大值
  5. 50% 标记
  6. 系列 6 或更多系列则用于表示其他任何标记数据,如离群值。

实际上,您可以将其他标记系列放置在 K 线标记数据的前后,但将它们全部放在最后会更简单。

您可以通过指定不同的标记、不同的基本图表类型或不同的数据排序方式来创建不同样式的箱形图表

说明 示例

这是一个标准的箱形图表,但为不同的图表元素分配了不同的颜色,以突出显示用于创建每个图表元素的标记。

  • cht=bvs - 基本图表类型为 bvs,但此基本图表中没有实际显示条形。我们可以在此处指定任何复合图表类型。
  • chd=t0:- t0 会隐藏此折线图中的所有线条。所有数据都将仅用于标记。在该数据中,第一个值和最后一个值均为 -1,以避免标记与图表的左右边缘重叠。第二个系列中的所有值均低于第三个系列中的相应值,因此所有框均未填充。
    • -1,5,10,7,12,-1 - 最小值:下面的橙色杆的底部点,以及绿色水平线的高度。
    • -1,25,30,27,24,-1 - 25% 值:橙色框的底部水平边缘。
    • -1,40,45,47,39,-1 - 75% 值:橙色框的顶部水平边缘。
    • -1,55,63,59,80,-1 - 最大值:上面的橙色杆的上点;也是蓝色水平线的高度。
    • -1,30,40,35,30,-1 - K 线内部的黑色水平“中线”。
    • -1,-1,5,70,90,-1 - 离群值数据(红色圆圈)
    • -1,-1,-1,80,5,-1 - 更多离群值数据(红色圆圈)。 离群值数据被拆分为两个集合,这是因为如果不使用偏移或其他复杂技巧,就无法在同一个系列中指定两个位于一个之上的标记。
  • chm= - 标记数据,如下所述:
    • F,FF9900,0,1:4,40 - 橙色 K 线标记 (F),使用从第一个数据系列 (0) 开始的四个数据系列,位于第 1-4 点,大小为 40。
    • H,0CBF0B,0,1:4,1:20 - 绿色水平线段标记,显示的是最小值。这些数据来自于系列 1。
    • H,0000FF,3,1:4,1:20 - 显示最大值的蓝色水平线段标记。这些数据来自于系列 3。
    • H,000000,4,1:4,1:40 - 黑色水平线段标记,显示 50% 值。这些数据来自于系列 4。
    • o,FF0000,5,-1,7 - 分配给第六个数据系列的红色圆形,用于表示离群值。标记已分配给该系列中的所有元素,对没有离群值的框使用 -1。
    • o,FF0000,6,-1,7 - 更多离群值。如果您想在同一个方框周围堆叠离群值,则需要另一个数据系列。

包含两个数据集的纵向条形图表:一个浅蓝色的数据集堆叠在另一个深蓝色的数据集上

cht=bvs
chd=t0:
  -1,5,10,7,12,-1|
  -1,25,30,27,24,-1|
  -1,40,45,47,39,-1|
  -1,55,63,59,80,-1|
  -1,30,40,35,30,-1|
  -1,-1,5,70,90,-1|
  -1,-1,-1,80,5,-1
chm=
  F,FF9900,0,1:4,40|
  H,0CBF0B,0,1:4,1:20|
  H,000000,4,1:4,1:40|
  H,0000FF,3,1:4,1:20|
  o,FF0000,5,-1,7|
  o,FF0000,6,-1,7

lc 图表类型将始终显示轴线。如需创建不带轴线的图表,请将图表类型指定为 ls。
图表类型 lc 显示边框
  cht=lc
图表类型 ls 不显示边框
   cht=ls
如需创建已填充的框,请确保第二个系列中的点大于第三个系列中的相应点。较大值在右侧显示的代码中标记为红色。 包含两个数据集的纵向条形图表:一个浅蓝色的数据集堆叠在另一个深蓝色的数据集上
chd=t0:
  -1,5,10,7,12,-1
  -1,40,30,27,24,-1
  -1,25,45,47,39,-1
  -1,55,63,59,80,-1

返回页首

 

嵌入式图表

嵌入到折线图表中的饼形图表

您可以使用动态图标在条形图折线图雷达图scatter图中嵌入任何类型的图表。请参阅动态图标 (chem) 标记文档的嵌入式图表部分。

返回页首

 

标准功能

此网页上的其他功能均为标准图表功能。

线条标记 chm=D [条形图、K 线图、折线图、雷达图、散点图]

您可以在图表中添加一条用于跟踪数据的线条。最常用于复合图表

要添加多行代码(或将其与任何其他 chm 标记结合使用),请使用竖线 (|) 分隔符分隔 chm 参数集。您不能使用此参数制作虚线标记。

语法

chm=
  D,<color>,<series_index>,<which_points>,<width>,<opt_z_order>
D
表示这是一个线条标记。
<color>
线条的颜色,采用 RRGGBB 十六进制格式
<series_index>
用于绘制线条的数据系列的索引。第一个数据系列的数据系列索引为 0,第二个数据系列的数据系列索引为 1,依此类推。
<what_points>which_points
要用系列中的哪些点来绘制线条。请使用以下某个值:
  • 0 - 使用系列中的所有点。
  • start:end - 使用系列中特定的点范围(从起始值到结束值,含从零开始的索引)。您还可以使用浮点值指定中间点,或将 startend 留空以分别表示第一个或最后一个数据点。startend 可以为负数,作为最后一个值的反向索引。如果 startend 均为负数,请务必以递增值(例如 -6:-1)写出。
<size>
线条的宽度(以像素为单位)。
<opt_z_order>
[可选] 表示要在哪个图层上绘制标记(与其他标记和其他所有图表元素相比)。这是一个从 -1.0 到 1.0(包括 -1.0 和 1.0)的浮点数,其中 -1.0 表示底部,1.0 表示顶部。图表元素(折线和条形)正好低于零。如果两个标记的值相同,就会按照网址指定的顺序绘制它们。默认值为 0.0(正好位于图表元素的上方)。

 

示例

说明 示例

此示例展示了如何在条形图上绘制标记线。 Z 轴顺序设置为 1,因此线条是在条形的顶部绘制的。

此例中的条形和数据折线使用了相同的数据。
带有折线标记的条形图表
chm=D,0033FF,0,0,5,1
chd=s:1XQbnf4

此条形图为同一个条形图,但为折线额外提供了一个数据系列。这是一个复合图表的示例。 复合图表的绘制方式是:向 chd 参数添加额外的数据系列,并向 chd 添加一个值,告知图表“忽略”这些额外的数据系列。

如需了解详情,请参阅复合图表

带有折线标记的条形图表
chm=D,0033FF,1,0,5,1
chd=s1:1XQbnf4,43ksfg6

返回页首

形状标记 chm [条形图、折线图、雷达图、散点图]

您可以为图表上的所有或单个数据点指定图形标记。如果两个或多个标记占据同一点,则会按照标记在 chm 参数中的显示顺序绘制这些标记。您还可以在数据点上创建文本标记,数据点标记中对此进行了介绍。

您可以将形状标记与任何其他 chm 参数结合使用,并使用竖线字符 ( |) 来分隔 chm 参数。

语法

为要标记的每个系列指定以下一组参数。如需标记多个系列,请创建额外的参数集,并以竖线字符分隔。您无需标记所有系列。如果您不为数据系列分配标记,则该数据系列将不会收到任何标记。

散点图中,形状标记的行为方式略有不同。如需了解详情,请参阅该文档。

chm=
  [@]<marker_type>,<color>,<series_index>,<opt_which_points>,<size>,<opt_z_order>,<opt_offset>
    |...|
  [@]<marker_type>,<color>,<series_index>,<opt_which_points>,<size>,<opt_z_order>,<opt_offset>
@
[可选] 如果您在标记类型前面加上可选的 @ 字符,则 <opt_ which_points> 应使用 x:y 格式。
<marker_type>
要使用的标记类型。指定以下某种类型:
  • a - 箭头
  • c - 十字
  • C - 矩形。如果是矩形标记,则必须至少有两个数据系列,数据系列 0 指定下边缘,数据系列 1 指定上边缘。<size> 指定矩形的宽度(以像素为单位)。
  • d - 钻石级
  • E - 错误栏标记 ( ) 此标记需要创建两个数据系列:一个值用于底部,第二个数据系列中的对应点用于顶部。此外,它还公开了一个扩展的 <size> 语法:line_thickness[:top_and_bottom_width],其中 top_and_bottom_width 是可选的。请参阅下面的示例。
  • h - 在指定高度上横跨图表的水平线。 (<opt_which_points> 参数的唯一有效格式为 opt_which_points。)
  • H - 穿过指定数据标记的水平线。这支持扩展的 <size> 语法,该语法可让您指定确切的线条长度:line_thickness[:length],其中 :length 是可选的,默认值为图表区域的完整宽度。
  • o - 圈子
  • s - 方形
  • v - 从 x 轴到数据点的竖线
  • V - 长度可调的竖线。这支持扩展的 <size> 值语法,该语法可让您指定确切的线条长度:line_thickness[:length],其中 :length 是可选的,默认值为图表区域的完整高度。该标记会居中于相关数据点上。
  • x - 一个 X
<color>
:此系列的标记的颜色,采用 RRGGBB 十六进制格式
<series_index>
:绘制标记时所依据的数据系列中从零开始的索引。h 标记以及按 x/y 位置指定位置的标记(以 @ 字符开头)会被忽略。您可以使用隐藏的数据系列作为标记来源;有关详情,请参阅复合图表。分组垂直条形图支持特殊的扩展语法,以便将标记与特定条形对齐。
<opt_ which_points>opt_which_points
[可选] 要在哪个/哪些点上绘制标记。默认值为所有标记。请使用以下某个值:
  • n.d - 绘制标记的位置。其含义因标记类型而异:
    • 除 h 以外的所有类型 - 要在哪个数据点上绘制标记,其中 n.d 是数据系列中从零开始的索引。如果您指定非整数值,则小数表示计算出的中间点。例如,3.5 表示点 3 和点 4 之间的一半。
    • h - 一个介于 0.0 到 1.0 之间的数字,其中 0.0 表示图表的底部,1.0 表示图表的顶部。
  • -1 - 在所有数据点上绘制标记。此外,您也可以将此参数留空,以便在所有数据点上进行绘制。
  • -n - 在每 n 个数据点上绘制一个标记。n浮点值;如果 n 小于 1,则图表会为您计算额外的中间点。例如,-0.5 表示放置的标记数量将是数据点的两倍。
  • start:end:n - 在范围中的第 n 个数据点上绘制一个标记(索引值介于 start 到 end 之间(包括这两个值)。nnn所有参数都是可选的(可以不存在),因此 3::1 表示从第四个元素到最后一个元素,即第 1 步,如果完全省略此参数,则默认采用 first:last:1。所有值都可以是浮点数。startend 可以为负值,以便从最后一个值开始反向计数。如果 startend 均为负数,请确保它们以递增值列出(例如,-6:-1:1)。 如果 n 步值小于 1,它将通过插值给定的数据值来计算其他数据点。n默认值为 first:last:1
  • x:y - 在图表上的特定 x/y 点绘制标记。 此点不必在线。如需使用此选项,请在标记类型之前添加 @ 字符。以浮点值指定坐标,其中 0:0 为图表的左下角,1:1 为图表的右上角。例如,如需向图表中心添加 15 像素的红色菱形,请使用 @d,FF0000,0,0.5:0.5,15
<size>
标记的大小(以像素为单位)。大多数标记会为此参数采用单个数字值;V、H 和 S 标记支持语法 <size>[:width],其中可选的第二部分用于指定线条或标记的长度。
<opt_z_order>
[可选] 表示要在哪个图层上绘制标记(与其他标记和其他所有图表元素相比)。这是一个从 -1.0 到 1.0(包括 -1.0 和 1.0)的浮点数,其中 -1.0 表示底部,1.0 表示顶部。图表元素(折线和条形)正好低于零。如果两个标记具有相同的值,则系统会按照网址指定的顺序绘制它们。默认值为 0.0(正好位于图表元素的上方)。
<opt_offset>
[可选] 可让您指定相对于指定位置的水平和垂直偏移。以下语法使用 : 分隔符:reserved:<horizontal_offset>:<vertical_offset>。 如果指定,则可以在 <opt_z_order> 的 chm 参数字符串中添加空值。示例:o,FF9900,0,4,12,,:10 o,FF9900,0,4,12.0,,:-10:20 o,FF9900,0,4,12,1,::20
  • reserved - 留空。
  • <horizontal_offset> - 一个正数或负数,用于指定水平偏移量(以像素为单位)。可选;如果未使用,请留空。
  • <vertical_offset> - 一个正数或负数,用于指定垂直偏移量(以像素为单位)。可选;如果未使用,请留空。

 

示例

说明 示例

下面列举了几个形状和线条标记的示例。

  • a,990066,0,0.0,9.0 - 紫色箭头,第一个数据系列,位于第一个点,大小为 9。
  • c,FF0000,0,1.0,20.0 - 红色十字,第一个数据系列,位于第二个点,尺寸 9。
  • d,80C65A,0,2,20.0 - 绿色菱形,第一个数据系列,第三个点,尺寸 9。
  • H,000000,0,3,1:40 - 黑色水平线,第一个数据系列,数据点 3,宽 1 像素,长 40 像素。
  • o,FF9900,0,4.0,12.0 - 橙色圆形,第一个数据系列,位于第五点,大小 12。
  • s,3399CC,0,5.0,11.0 - 蓝色方形,第一个数据系列,位于第六点,大小 11。
  • v,BBCCED,0,6.0,1.0 - 向上指向某个点的垂直线,第一个数据系列,第七点,宽 1 像素。
  • V,3399CC,0,7.0,1.0 - 从图表底部到顶部的竖线,第一个数据系列,第八点,宽 1 像素。
  • x,FFCC33,0,8.0,20.0 - 黄色“X”,第一个数据系列,第九点,大小 20。
  • H,FFFF00,0,9,2 - 黄色水平线,与数据点 9 处的图表宽度相同。
  • h,FF0000,0,0.5,1 - 位于指定高度的红色横线,第一个数据系列,位于图表高度的一半,宽 1 像素。
带有标记的折线图表
chm=
  a,990066,0,0.0,9.0|
  c,FF0000,0,1.0,20|
  d,80C65A,0,2.0,20.0|
  H,000000,0,3,1:40|
  o,FF9900,0,4.0,12.0|
  s,3399CC,0,5.0,11.0|
  v,BBCCED,0,6,1.0|
  V,3399CC,0,7,1.0|
  x,FFCC33,0,8,20|
  H,FFFF00,0,9,2|
  h,FF0000,0,0.5,1

下例对一个数据系列使用菱形,对另一个数据系列使用圆形。

如果两个或多个标记占据同一点,则会按照标记在 chm 参数中的显示顺序绘制这些标记。在这里,圆形是第一个使用 chm 指定的标记,因此首先绘制了圆形。先指定并绘制菱形,这样就会将其绘制在圆形上。

折线图:一条折线的每个数据点上有 15 个像素的圆圈,另一条折线包含 10 个像素的菱形。一个菱形绘制在两条折线的公共点上
chm=
  o,FF9900,0,-1,15.0|
  d,FF0000,1,-1,10.0

此折线图的每秒数据点上带有一个标记(-2 表示每隔一个点)。

每两个数据点上带有一个标记的折线图表
chd=t:
  0,20,20,50,40,70,70,90,85,45,40,50
chm=
  o,0066FF,0,-2,6
此折线图使用的标记数量是数据点的两倍(-0.5 表示每半个点)。 每两个数据点上带有一个标记的折线图表
chd=t:
  0,20,20,50,40,70,70,90,85,45,40,50
chm=
  o,0066FF,0,-.5,6
以下示例展示了如何使用 hv 标记创建自定义颜色和粗细的网格线。将 z-order 值(最后一个值)设置为 -1,以便在数据线下方绘制网格线。
每两个数据点上带有一个标记的折线图表
chm=
  h,76A4FB,0,0:1:.2,2,-1|
  V,76A4FB,0,::2,0.5,-1

此例向折线图表添加了纵向填充线:

  • v - 向图表添加竖线
  • FF0000 - 红线
  • 0 - 序列索引
  • : :.5 - 范围说明符:从 start 到 end,每 0.5 个点。
  • 2 - 厚度为 2 像素。
每两个数据点上带有一个标记的折线图表
chm=
  v,FF0000,0,::.5,2
此示例使用确切坐标向图表添加了箭头和文本标记。第一个标记 D 是条形下方的轨迹线。第二个标记是箭头,第三个标记是箭头文本。
chm=
  D,003971,1,0,3|
  @a,000000,0,.25:.75,7|
  @tExpected,000000,0,.35:.85,10
固定在特定数据点上的水平线 (H) 可用于显示相对值,或强调图表上数据值的高度。
chm=H,FF0000,0,18,1

此图表演示的标记可以在 <size> 参数中指定线段粗细和长度。

  • E,000000,0,6,1:20 - 黑色错误栏,线条宽 1 像素,顶部和底部栏长 20 像素。底部固定在数据系列 0 的点 8 上,顶部固定在数据系列 1 的点 8 上。
  • H,990066,1,2,5:50 - 紫色水平线,宽 5 像素,长 50 像素,居中于数据点 2。
  • V,3399CC,0,8,3:50- 蓝色竖线 宽 3 像素,长 50 像素,以数据点 8 为中心。
title="cht=lc&chd=s:2gounjqLaCf,jqLaCf2goun&chco=008000,00008033&chls=2.0,4.0,1.0&chs=250x150&chm=H,990066,1,2,5,30"chm=
  E,000000,0,6,1:20|
  H,990066,1,2,5:50|
  V,3399CC,0,8,3:50

返回页首

K 线标记 chm=F [条形图、线段]

K 线标记表示数据系列中的方差和方向变化。它们通常用于显示一天中的股价。该标记包括显示特定时间段(通常为一天)内最高值和最低值以及开盘值和收盘值的片段。如需详细了解 K 线标记,请点击此处

K 线标记绘制为被垂直线平分的矩形。这需要四个数据系列才能绘制一个 K 线标记;以下是每个系列指定的内容:

  • 序列 1 和 4 分别指定竖线的底部和顶部。它们通常代表当天的最低值和最高值。
  • 序列 2 和 3 指定矩形的垂直边框。 数据系列 2 为开盘值,数据系列 3 为收盘值。矩形的颜色取决于哪个值较高:当开盘值(序列 2)低于收盘值(序列 3)时,价格会上涨,并且矩形默认以纯绿色填充;当开盘值(序列 2)高于收盘值(序列 3)时,价格会降低,而矩形则默认填充实心值。您只能为值递减的矩形指定填充颜色。您指定该值后,值不断递增的矩形将处于未填充状态(空)。请注意,数据系列 2 可以是矩形的顶部或底部,具体取决于价格是上涨还是下调。

您可以将 K 线标记与任何其他 chm 参数结合使用,并使用竖线字符 ( |) 来分隔 chm 参数。

注意:如果您不希望用于绘制标记的数据对应的线条显示在图表中,则必须在格式类型后面添加一个 0。例如:文本格式数据字符串中的 chd=t0:10,20,30,40。如需了解详情,请参阅复合图表

以下示例显示了每个数据系列的线条:

语法

chm=
  F,<opt_declining_color>,<data_series_index>,<opt_which_points>,<width>,<opt_z_order>
F
表示这是一个 K 线标记。
<opt_declining_color>
[可选] 当值减少时(当数据系列 2 的值 > 数据系列 3 对应的值时),矩形的填充颜色。这是一个 RRGGBB 格式的十六进制数字。当值增大时,矩形将为空。默认为绿色表示增加值,纯红色表示降低值(您无法为增加值指定自定义填充颜色)。
<data_series_index>
要用作 K 线标记的第一个系列的数据系列的索引。这是一个从零开始的索引。因此,如果您在此处指定了 1,而您有六个数据系列,则第二个、第三个、第四个和第五个将用于绘制 K 线标记。
<opt_which_points>
[可选] 指定用于绘制标记的数据点。默认值为所有标记。请使用以下格式之一:
  • n.d - 在系列中的单个点上绘制标记,其中 n.d 是系列中点的索引。n.d如果您指定非整数值,则小数表示计算出的中间点。例如,3.5 表示点 3 和点 4 之间的一半。
  • -1 - 在所有数据点上绘制标记。您也可将此参数留空,以便在所有标记上绘制。
  • -n - 在每 n 个数据点上绘制一个标记。n
  • start:end:n - 在范围中的第 n 个数据点上绘制一个标记(索引值介于 start 到 end 之间(包括这两个值)。nnn所有参数都是可选的(可以不存在),因此 3::1 表示从第四个元素到最后一个元素,即第 1 步,如果完全省略此参数,则默认采用 first:last:1。所有值都可以是浮点数。startend 可以为负值,以便从最后一个值开始反向计数。如果 startend 均为负数,请务必以递增值列出(例如,-6:-1:1)。如果 n 步值小于 1,它将通过插值给定的数据值来计算其他数据点。n默认值为 first:last:1
<宽度>
所有矩形的宽度(以像素为单位)。
<opt_z_order>
[可选] 表示要在哪个图层上绘制标记(与其他标记和其他所有图表元素相比)。这是一个从 -1.0 到 1.0(包括 -1.0 和 1.0)的浮点数,其中 -1.0 表示底部,1.0 表示顶部。图表元素(折线和条形)正好低于零。如果两个标记的值相同,就会按照网址指定的顺序绘制它们。默认值为 0.0(正好位于图表元素的上方)。

 

示例

说明 示例

下面是一个包含四个系列的折线图上的 K 线标记示例。自定义填充颜色为 0000FF(蓝色),当数据系列 3 中的点小于数据系列 2 中的等效点时,此颜色用于填充矩形。

图表裁剪了第一个和最后一个矩形。若要消除这些值,您可以为 chm 的第四个参数指定 1:4 的值。

请注意数据字符串中的 0,以隐藏序列中的相应行:chd=t0。 这说明所有图表数据都会用于绘制标记。

<which_point> 参数为空,表示会在所有数据点上绘制 K 线。

带有四条橙色折线和四个金融标记的折线图表

chd=t0:
  0, 5,10, 7,12, 6|
  35,25,45,47,24,46|
  15,40,30,27,39,54|
  70,55,63,59,80,60
chm=F,0000FF,0,,20

下面是一个同一图表的示例,该图表使用默认颜色,并移除了第一项和最后一项。

这是一个复合图表:它是折线图(基本图表类型)和 K 线标记的组合。cht=t:1 中的值 1 表示应在基本图表类型(折线图)中隐藏第一个数据系列之后的所有数据系列。chm=F,,1,1:4,20 中的第一个 1 表示 K 线数据来自数据系列 2、3、4 和 5(1 从 0 开始)。如需详细了解如何绘制此类复合图表,请参阅复合图表

带有一条橙色折线和四个金融标记的折线图表。
cht=lc
chm=
  F,,1,1:4,20

chd=t1:
  15,40,30,27,39,54|
  ...

返回页首