Вот как я это делаю:
foo <- rnorm(100, mean=1, sd=2)
hist(foo, prob=TRUE)
curve(dnorm(x, mean=mean(foo), sd=sd(foo)), add=TRUE)
Бонусное упражнение - это сделать с пакетом ggplot2 ...
Не комментируя, почему это не работает, одно это не поможет вам против сценариев, которые используют addEventListener ('icecandidate').
adapter.js содержит вспомогательную функцию «wrapPeerConnectionEvent», которая обрабатывает оба варианта. С этим помощником это становится довольно простой задачей:
wrapPeerConnectionEvent(window, 'icecandidate', (e) => {
if (e.candidate) {
const parts = e.candidate.candidate.split(' ');
parts[4] = '127.0.0.1'; // replace the real ip with 127.0.0.1
e.candidate.candidate = parts.join(' ');
}
return e;
});
См. https://jsfiddle.net/krgz5qu1/ для полного примера. Обратите внимание, что вам, возможно, придется позаботиться о ip в поле relAddr кандидатов на сервер-рефлексив и ретрансляции.