Пользовательский стиль Vega для текстовой метки

#data-visualization #vega

#визуализация данных #vega

Вопрос:

Итак, как обычно, у меня возникают проблемы с применением того, что я прочитал в документации Vega. Кажется, что несколько частей отсутствуют, или я не знаю, как это прочитать.

Проблема: у меня есть текстовая метка, соответствующая точке на точечной диаграмме. Представьте одну красную точку с надписью «Ferrari» рядом с ней. Я хочу, чтобы текст был больше и другого цвета.

Если я перейду к документации Vega, в раздел метки, я увижу там многообещающее свойство: style и я читаю: Style — строка или массив строк, указывающий название пользовательских стилей для применения к метке. Стиль — это именованная коллекция значений по умолчанию для свойств метки, определенных в конфигурации. Звучит идеально.

Затем я продолжил создавать следующее в объекте конфигурации:

 config': {
      'axis': {
        'labelColor': '#b5bcc8',
        'labelFontSize': 15,
        'labelFont': '(quatro)',
        'titleColor': '#b5bcc8',
        'titleFontSize': 15,
        'titleFont': '(quatro)',
        'titlePadding': 20,
        'tickColor': '#b5bcc8',
        'domainColor': '#b5bcc8'
      },
      'custom': {
        'textFontSize': 22
      }
}
  

Затем примените этот пользовательский стиль к текстовой метке, как предложено:

 {
   'name': 'product_label',
   'type': 'text',
   'from': { 'data': 'salesData' },
   'style': 'custom',
   'encode': {
      'enter': {
         'x': { 'scale': 'x', 'field': 'month', 'offset': 8 },
         'y': { 'scale': 'y', 'field': 'salesTotal', 'offset': -5 },
            'text': { 'field': 'name' },
            'fill': { 'value': 'black' }
        }
      }
  }
  

Конечно, я сделал здесь много предположений, поскольку у меня нет примеров для этого. Я предположил, что именованная коллекция означает объект. Я предположил, что textFontSize является допустимым свойством объекта для Vega. Но эти предположения также могут быть ошибочными.

Ответ №1:

Хорошо, итак, как обычно, было доказано, что я не знаю, как читать документацию. Таким образом, настройка стиля находится прямо под разделом конфигурации:

https://vega.github.io/vega/docs/config/#style

По сути, я создал этот пользовательский стиль, следуя примеру документации:

 'style': {
   'custom': {
     'fontSize': 16
    }
 }
  

… а затем применил его к моей текстовой метке, как в примере выше.