Skip to content
Main Navigation 指南
图表API
实例API
Pro预览定制赞助
9.x 文档
8.x 文档

🇨🇳 简体中文

🇬🇧 English

🇨🇳 简体中文

🇬🇧 English

主题

Sidebar Navigation

init

dispose

version

registerLocale

getSupportedLocales

registerStyles

registerFigure

getSupportedFigures

getFigureClass

registerIndicator

getSupportedIndicators

registerOverlay

getSupportedOverlays

registerXAxis

registerYAxis

utils

页面导航

registerIndicator(indicator) ​

registerIndicator 用于自定义指标。

参考 ​

typescript
(
  indicator: {
    name: string
    shortName?: string
    precision?: number
    calcParams?: unknown[]
    shouldOhlc?: boolean
    shouldFormatBigNumber?: boolean
    visible?: boolean
    zLevel?: number
    extendData?: unknown
    series?: 'normal' | 'price' | 'volume',
    figures?: Array<{
      key: string
      title?: string
      type?: string
      baseValue?: number
      attrs?: (params: object) => object
      styles?: (params: object) => object
    }>
    minValue?: number
    maxValue?: number
    styles?: Partial<IndicatorStyle>
    shouldUpdate?: (prev: Indicator, current: Indicator) => (boolean | { calc: boolean, draw: boolean })
    calc: (kLineDataList: KLineData[], indicator: Indicator) => Record<Timestamp, unknown> | Promise<Record<Timestamp, unknown>>
    regenerateFigures?: (calcParams: unknown[]) => Array<{
      key: string
      title?: string
      type?: string
      baseValue?: number
      attrs?: (params: object) => object
      styles?: (params: object) => object
    }>
    createTooltipDataSource?: (params: object) => ({
      name?: string
      calcParamsText?: string
      features?: Array<{
         id?: string
         position?: 'left' | 'middle' | 'right'
         marginLeft?: number
         marginTop?: number
         marginRight?: number
         marginBottom?: number
         paddingLeft?: number
         paddingTop?: number
         paddingRight?: number
         paddingBottom?: number
         size?: number
         color?: string
         activeColor?: string
         backgroundColor?: string
         activeBackgroundColor?: string
         type?: 'path' | 'icon_font'
         path?: {
           style?: 'stroke' | 'fill'
           path?: string
           lineWidth?: number
         }
         iconFont?: {
           content?: string
           family?: string
         }
      }>
      legends?: Array<{
        title: string |
          {
            text: string
            color: string
          }
        value: string |
          {
            text: string
            color: string
          }
      }>
    })
    draw?: (params: object) => boolean
    onDataStateChange?: (params: object) => void
  }
) => void

参数 ​

  • indicator 指标配置。
    • name 名称,用于创建或者修改的唯一标识。
    • shortName 简短名称,用于提示显示。
    • precision 精度。
    • calcParams 计算参数。
    • shouldOhlc 是否需要显示 ohlc 柱。
    • shouldFormatBigNumber 是否需要将大数字格式化显示。
    • visible 是否可见。
    • zLevel 层级,只作用于指标与指标之间。
    • extendData 自定义扩展数据。
    • series 系列,支持 normal , price 和 volume ,当是 price 并且没有设置 precision 时,精度将随着价格精度变化,当是 volume 并且没有设置 precision 时,精度将随数量精度变化。
    • figures 图形配置,是一个数组,子项是包含配置的 object 。
      • key 数据取值的标识,与 calc 返回的数据子项的 key 对应。
      • type 图形类型,支持 klinecharts.getSupportedFigures 返回值存在的类型。
      • baseValue 基本对照值,目前仅仅作用于 type 是 rect 和 bar 的时候,当此值有效时,图形将会以此值为基准上下绘制。
      • attrs 属性值,是一个方法,返回值是 klinecharts.getFigureClass 得到的对象所需要的属性。
      • styles 样式,是一个方法,返回值是 klinecharts.getFigureClass 得到的对象所需要的样式。
    • minValue 指定最小值。
    • maxValue 指定最大值。
    • styles 样式配置,类型同通用样式 Styles 中的 indicator 。
    • shouldUpdate 手动控制是否需要更新。
    • calc 计算方法。
    • regenerateFigures 重新生成基础图形配置,当 calcParams 变化时触发,返回值类型同 figures 。
    • createTooltipDataSource 创建自定义的提示信息。
    • draw 自定义绘制方法,如果返回值是 true ,则会覆盖默认的绘制。
    • onDataStateChange 数据变化回调通知。

返回值 ​

registerIndicator 返回 undefined 。

用法 ​

基本使用 ​

使用自定义基础图形 ​

自定义的提示信息 ​

自定义绘制 ​

在 GitHub 上编辑此页面

最后更新于:

Pager
上一篇getFigureClass
下一篇getSupportedIndicators

Released under the Apache License V2.

Copyright © 2018-2025 liihuu