Текст в ggplots в моем развернутом приложении Shiny непредсказуемо колеблется между желаемым размером и размерами уменьшенного шрифта.
Когда я размещаю приложение локально, весь текст выглядит так, как я хочу, всегда. Но когда я rsync
передаю те же самые файлы на мой сервер и посещаю необходимый URL, половина времени текст на ggplots крошечный.
Вот мое приложение, обслуживаемое в Chrome локально через RStudio с нужным шрифтом:

Вот развернутое приложение , обслуживаемое в Chrome, с маленьким шрифтом (обратите внимание, что другие атрибуты, такие как вес и семейство, согласованы):

Единственное место, где я определяю размеры шрифта, находится в ggplot2 theme
, который кажется безобидным:
theme(plot.title= element_text(family="GT America", face='bold'),
text = element_text(family="GT America", size = 16),
plot.margin = unit(c(1,1,4,1), "lines"),
legend.position = c(.5, -.22), legend.direction="horizontal",
legend.background = element_rect(fill=alpha('lightgray', 0.4), color=NA),
legend.key.width = unit(1, "cm"),
legend.text = element_text(size=16))
Что еще хуже, проблема кажется неустойчивой - иногда сервер показывает правильный размер шрифта; В других случаях размеры шрифта сокращаются. Из-за этой неустойчивости Я не могу просто изменить размеры шрифта на сервере. Я делал это раньше, и когда проблема исчезла, у меня были огромные шрифты в моих выходных данных ggplot на моем производственном сервере! Не идеально.
Это не полностью определяется браузером c, потому что та же проблема возникает в Safari.
Я видел решения похожих проблем с семейством шрифтов которые рекомендуют использовать renderImage()
вместо renderPlot()
. Но я бы предпочел этого не делать, поскольку в конечном итоге я хотел бы добавить интерактивный инструмент для наведения на график, и я думаю, что это невозможно с изображением.
Я также видел ответы о размер экрана , но я не понимаю, как это может быть причиной, так как я постоянно работаю на одном экране и в одном браузере.
Что я мог делать в настройках своего сервера, Блестящий конфиг, CSS, браузер и др. c. вызвать эту странную проблему «снова-снова-снова-снова»? Я могу поделиться более подробной информацией, если это полезно.