Я видел lpr -o landscape
, но у меня недостаточно опыта, чтобы знать, работает ли он на всех принтерах.
Вместо изменения ориентации при печати вы можете сделать это при создании изображения (еслиэто соответствует вашему рабочему процессу).Команда matplotlib savefig
позволяет указать сохранение в альбомной ориентации, но в настоящее время только для postscript.Однако это не проблема, поскольку мы можем легко преобразовать файл postscript в формат PDF.Ниже приведен пример.
В Python:
from pylab import *
import numpy as np
x = np.arange(0, 10, 0.1)
y = np.sin(x)
plot(x, y)
xlabel('x')
ylabel('y')
savefig('img.eps', orientation='landscape')
Я упустил размер холста для удобства и краткости.
Теперь у нас есть файл с именем img.eps
.В оболочке выполните следующее.
epstopdf img.eps
Вот как выглядит итоговый файл img.pdf
: ![Landscape image.](https://i.stack.imgur.com/uUx84.png)
Один недостаток, который следует учитывать при таком подходе, заключается в том, что postscript делаетне нравится прозрачность, поэтому, если вы хотите прозрачности, это не подход для вас.Чтобы понять, что я имею в виду, возьмем пример matplotlib patch_collection.py .Замените pylab.show()
в последней строке на pylab.savefig('patch.pdf')
, запустите его, а затем посмотрите на полученный PDF-файл.Это будет похоже на изображение в примере.Однако, если вы сделаете pylab.savefig('patch.eps')
, вы увидите, что все объекты непрозрачны.