Отрегулируйте размер фигуры в cytoscape.js с помощью dagre layout

Я пытаюсь изменить размеры форм узлов до размера текста узла. Я следовал инструкциям из https://github.com/cytoscape/cytoscape.js/issues/649. Тем не мение:

  1. Формы всегда заканчиваются высотой = шириной
  2. Размер всех форм одинаков.
  3. Размер формы, кажется, достигает максимума, выше которого он не может расти.

(Я не уверен, что это как-то связано с dagre макетом.)

Я использую следующие библиотеки с макетом dagre:

  • cytoscape.min.js
  • dagre.min.js
  • cytoscape-dagre.js

    container: document.getElementById('cy'),
    boxSelectionEnabled: false, autounselectify: true,
    
    layout: {name: 'dagre', rankDir: 'LR', align: 'LR'},
    
    style: [{
        selector: 'node',
        style: {
            'content': 'data(name)',
            'label': 'data(name)',
            'text-opacity': 1,
            'text-valign': 'center',
            'text-halign': 'center',
            'text-wrap': 'wrap',
            'font-size': 9,
            'background-color': '#AAA',
            'shape':'rectangle',
            'width': 'data(width)' * 50,
            'height': 'data(height)' * 50 }
    },{
        selector: 'edge',
        style: {
            'width': 4,
            'content': 'data(name)',
            'target-arrow-shape': 'triangle',
            'line-color': 'data(color)',
            'text-wrap': 'wrap',
            'target-arrow-color': 'data(color)',
            'font-size': 10,
        }
    }]
    

1 ответ

Вы указали неверный стиль. "somestring" * 50 является NaN,

Ты хочешь width: labelКак указано в документации: http://js.cytoscape.org/

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