Установить ширину участка, matplotlib - PullRequest
0 голосов
/ 06 февраля 2019

Тексты справа на этом графике пиплота обрезаются, как я могу расширить область графика без изменения оси X?

Минимальный пример кода (аналогично, но не идентично примеру изображения)

import numpy as np

import matplotlib.pyplot as plt
import matplotlib as mp

n40=146-1.07*40
n90=146-1.07*90 
ageAxis =np.array([10, 40, 90])
Normal=np.array([n40, n40, n90])
plt.plot(ageAxis,Normal)

plt.text(90.2,50,'long text here that will be clipped')
ax = plt.gca()
ax.set_ylim([0,165])
ax.set_xlim([0,90])
fig= plt.gcf()
# set size fig.set_size_inches(20, 10.5)
plt.show()

pyplot

1 Ответ

0 голосов
/ 06 февраля 2019

Кажется, что это можно сделать с помощью комбинации set_size_inches и subplots_adjust

Я думаю, это не элегантно, но работает:

import numpy as np

import matplotlib.pyplot as plt
import matplotlib as mp

n40=146-1.07*40
n90=146-1.07*90 
ageAxis =np.array([10, 40, 90])
Normal=np.array([n40, n40, n90])
plt.plot(ageAxis,Normal)

plt.text(90.2,50,'long text here that will be clipped')
ax = plt.gca()
ax.set_ylim([0,165])
ax.set_xlim([0,90])
fig= plt.gcf()
fig.set_size_inches(10, 5.5)     # set a suitable size
plt.subplots_adjust(right=0.75)  # adjust plot area
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...