Чтобы расширить мой предыдущий комментарий, я уточню полный ответ.При использовании matplotlib
графики отображаются с помощью Qt , поэтому вы получаете всплывающие окна.
Если мы используем fig.savefig
вместо pyplot.show
, а затем pyplot.close
мы можем избежать всплывающих окон.Вот минимальный пример:
---
output: html_document
---
## Python *pyplot*
```{python pyplot, echo=FALSE}
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 2.0, 0.01)
s = 1 + np.sin(2 * np.pi * t)
fig, ax = plt.subplots()
ax.plot(t, s)
ax.set(xlabel='time (s)', ylabel='voltage (mV)',
title='About as simple as it gets, folks')
ax.grid()
fig.savefig("pyplot.png")
plt.close(fig)
```
```{r, echo=FALSE}
knitr::include_graphics("pyplot.png")
```
, который производит следующее без какого-либо прерывания процесса:
Источник : matplotlib.org
NB Согласно примечаниям к выпуску для RStudio v1.2.679-1 Preview, эта версиябудет отображать графики matplotlib, испускаемые кусками Python.
Обновление
При использовании последней версии предварительного просмотра, упомянутой выше, при обновлении чанка для использования pyplot.show
теперь будет отображаться inline по желанию.
```{python pyplot, echo=FALSE}
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 2.0, 0.01)
s = 1 + np.sin(2 * np.pi * t)
fig, ax = plt.subplots()
ax.plot(t, s)
ax.set(xlabel='time (s)', ylabel='voltage (mV)',
title='About as simple as it gets, folks')
ax.grid()
plt.show()
```
Для пользователей Anaconda
Если вы используете Anaconda в качестве дистрибутива Python, вы можете столкнуться с проблемой, когда Qt не найден в RStudio из-зак проблеме с отсутствующей переменной пути / среды.
Ошибка будет выглядеть следующим образом:
Не удалось запустить это приложение, так как не удалось найти или загрузить плагин платформы Qt"windows" in "", переустановка приложения может решить эту проблемум.
Быстрое исправление заключается в добавлении следующего к коду Python для настройки переменной среды.
import os
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = '/path/to/Anaconda3/Library/plugins/platforms'
Замена /path/to
соответствующим местоположением наваш дистрибутив Anaconda.