ng2-диаграммы настраивают данные и весь HTML-контент всплывающей подсказки, отображаемой при наведении на гистограмму

Я использую графики ng2 из программного обеспечения доблести с моим приложением angular 2. Я не могу понять, как настроить все содержимое HTML всплывающей подсказки по умолчанию, которая отображается при наведении курсора на гистограмму.

Есть идеи?

Обновить:

Вот мой HTML / код разметки:

<canvas baseChart width="100" height="100" style="padding:24px; border:1px solid black;border-color:gray" 
            [datasets]="barChartData"
            [labels]="barChartLabels"
            [options]="barChartOptions"
            [colors]="chartColors"
            [legend]="barChartLegend"
            [chartType]="barChartType"
            (chartHover)="chartHovered($event)"
            (chartClick)="chartClicked($event)"></canvas>
  </div>

В моем классе машинописи я реализовал функцию barChartOptions:

tooltips: {
    callbacks: {
        ...
        ...
}}

настроить несколько вещей, но это кажется действительно ограниченным. Например, я могу изменить метку и т. Д., Используя свойство метки:

label: function(tooltipItem, data) {                
    return "customlabel";
}  

Но я не вижу, как я могу добавить дополнительные ярлыки. С диаграммами ng2, если у меня есть гистограмма с двумя наборами данных, и наведите курсор мыши на один столбец, то он отображает только метку и данные для этого столбца, но не отображает данные для второго столбца второго набора данных. Я хотел бы отобразить оба, но не вижу, как я могу добавить дополнительные метки и данные для этого.

1 ответ

Я имел успех со следующей настройкой:

шаблон

<canvas
  baseChart
  [chartType]="chartSettings.lineChartType"
  [colors]="chartSettings.lineChartColors"
  [datasets]="lineChartData"
  [labels]="lineChartLabels"
  [legend]="chartSettings.lineChartLegend"
  [options]="chartSettings.lineChartOptions"   <---- the important one
>
</canvas>

И в настройках я создал файл stats.chart-settings.ts:

export const ChartSettings: any = {
  lineChartOptions: {
    tooltips: {
      backgroundColor: 'rgba(255,255,255,0.9)',
      bodyFontColor: '#999',
      borderColor: '#999',
      borderWidth: 1,
      caretPadding: 15,
      colorBody: '#666',
      displayColors: false,
      enabled: true,
      intersect: true,
      mode: 'x',
      titleFontColor: '#999',
      titleMarginBottom: 10,
      xPadding: 15,
      yPadding: 15,
    }
  }
}

В компоненте у меня просто есть:

import { ChartSettings } from './stats.chart-settings';

...

chartSettings: any;

constructor() {
  this.chartSettings = ChartSettings;
}

По сути, вы не можете применить стили с помощью CSS к диаграмме холста. Тем не менее, chartJS предоставляет способ применять стили к подсказкам. Пожалуйста, прочитайте больше в настройках всплывающей подсказки

Также рассмотрим этот пример: параметры внутренней диаграммы tooltips: {backgroundColor: '#fff'}

Другие вопросы по тегам