Почему phantomjs page.render не захватывает мой D3 svg? - PullRequest
0 голосов
/ 08 мая 2019

Почему моя визуализация D3 не фиксируется фантомами?Это единственный элемент на этой странице, который не был захвачен и сохранен как png.

Мой файл oncoprintsave.js:

var page = require('webpage').create();
page.viewportSize = { width: 1920, height: 1080 };
page.open('https://jonkatz2.github.io/2019/03/11/D3-oncoprint', function(status) {
    if (status !== 'success') {
        console.log('Unable to load the address!');
        phantom.exit(1);
    } else {
        window.setTimeout(function () {
            page.render('oncoprint.png');
            phantom.exit();
        }, 2000);
    }
});

и в моей консоли Ubuntu я ввожу:

phantomjs oncoprintsave.js

Это только типичный пример.Я делаю блестящее приложение, в котором я планирую записать некоторые визуализации D3 в виде png (на стороне сервера) и включить их в отчет rmarkdown-PDF.Я попытался r2d3 :: save_d3_png и получил пустые изображения, и я пытаюсь устранить неполадки, вызвав htmlwidgets :: saveWidget напрямую, а затем отправив системный вызов phantomjs на получившейся html-странице.

Я подозреваю, что ошибка в моем скрипте D3 приводит к сбою, но я слишком новичок в D3, чтобы идентифицировать его, и никаких ошибок не появляется, если я добавлю опцию --debug = true.

1 Ответ

0 голосов
/ 10 мая 2019

Я так и не решил, но переключился на хром и получил то, что хочу:

google-chrome --headless --disable-gpu --screenshot --window-size=1920,1080 https://jonkatz2.github.io/2019/03/11/D3-oncoprint
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...