Kendo UI Angular 2+ Chart - 系列工具提示模板 - 访问类别值和其他数据

Art*_*ski 2 kendo-ui-angular2 angular

我将剑道图表组件与“线”类型的系列项目一起使用。

根据此处的文档,可以将当前值用作系列工具提示模板中的占位符。

是否也可以访问模板中的当前类别?如果我绑定到对象而不是原始值,是否可以访问当前数据项而不仅仅是值?

谢谢

Var*_*ath 5

有一种方法。提供的文档并不简单,我也发现它令人困惑。

Current Category 可以通过声明一个变量并将其设置为category来访问。

如果您使用对象来设置剑道图表系列项目的数据,则该对象的其他属性也可以用作工具提示。我们在这里使用dataItem属性来访问我设置的数据的其他属性。

  <kendo-chart-series-item-tooltip>
        <ng-template let-value="value" let-category="category" let-dataItem="dataItem">
          Number of children: {{ dataItem.number }}
        </ng-template>
  </kendo-chart-series-item-tooltip>
Run Code Online (Sandbox Code Playgroud)

此处可以将数组中的每个 dataItem 对象设置为工具提示 可以在此处找到可以访问的 Tooltip 属性的完整列表。

http://www.telerik.com/kendo-angular-ui/components/charts/api/TooltipTemplatePoint/#toc-category

工作代码

<kendo-chart>
      <kendo-chart-tooltip>
        <ng-template kendoChartSeriesTooltipTemplate let-value="value">
          Default Content {{ value }}
        </ng-template>
      </kendo-chart-tooltip>
      <kendo-chart-title text="% children with conscientious objection recorded"></kendo-chart-title>
      <kendo-chart-category-axis>
        <kendo-chart-category-axis-item
          [categories]="['1999', '2000', '2001']"
          [title]="{ text: 'Years' }">
        </kendo-chart-category-axis-item>
      </kendo-chart-category-axis>
      <kendo-chart-series>
        <kendo-chart-series-item type="column" [data]="testData" field="percent" >
          <kendo-chart-series-item-tooltip>
            <ng-template let-value="value" let-category="category" let-dataItem="dataItem">
              Number of children: {{ dataItem.number }}
            </ng-template>
          </kendo-chart-series-item-tooltip>

        </kendo-chart-series-item>
      </kendo-chart-series>
 </kendo-chart>
Run Code Online (Sandbox Code Playgroud)

在打字稿文件中声明下面的 TestData 对象

testData = [{
      date: 1999,
      percent: 0.23,
      number: 4271
    },
    {
      date: 2000,
      percent: 0.41,
      number: 7624
    },
    {
      date: 2001,
      percent: 0.55,
      number: 9987
    }]
Run Code Online (Sandbox Code Playgroud)

这里我使用对象的 number 属性作为工具提示。希望这可以帮助。如果您无法解决,请告诉我。乐于帮助