Tôi đang cố gắng sử dụng biểu đồ Matplotlib như một phần của bài nộp sẵn sàng cho máy ảnh và nhà xuất bản chỉ yêu cầu sử dụng phông chữ Loại 1 .Phông chữ loại 1 có biểu đồ nhật ký
Tôi nhận thấy rằng phụ trợ PDF vui vẻ xuất các phông chữ Type-1 cho các đồ thị đơn giản với trục Y tuyến tính, nhưng đầu ra phông chữ Type-3 cho các trục Y lôgarit .
Sử dụng thuật ngữ lôgarit phát sinh việc sử dụng mathtext, có vẻ như là sử dụng phông chữ Loại 3, có lẽ do sử dụng mặc định số mũ ký hiệu. Tôi có thể sử dụng hack xấu xí để giải quyết vấn đề này - sử dụng pyplot.yticks() để buộc các dấu trục không sử dụng số mũ - nhưng điều này sẽ yêu cầu di chuyển vùng ô để chứa các nhãn lớn (như 10^6) hoặc viết các trục như 10, 100, 1K, v.v. để chúng phù hợp.
Tôi đã thử nghiệm ví dụ dưới đây với matplotlib chi nhánh tổng thể như của ngày hôm nay, cũng như 1.1.1, trong đó sản xuất hành vi tương tự, vì vậy tôi không biết rằng đây là một lỗi, có lẽ chỉ hành vi bất ngờ.
#!/usr/bin/env python
# Simple program to test for type 1 fonts.
# Generate a line graph w/linear and log Y axes.
from matplotlib import rc, rcParams
rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
#rc('font',**{'family':'sans-serif','sans-serif':['computer modern sans serif']})
# These lines are needed to get type-1 results:
# http://nerdjusttyped.blogspot.com/2010/07/type-1-fonts-and-matplotlib-figures.html
rcParams['ps.useafm'] = True
rcParams['pdf.use14corefonts'] = True
rcParams['text.usetex'] = False
import matplotlib.pyplot as plt
YSCALES = ['linear', 'log']
def plot(filename, yscale):
plt.figure(1)
xvals = range(1, 2)
yvals = xvals
plt.plot(xvals, yvals)
plt.yscale(yscale)
plt.savefig(filename + '.pdf')
if __name__ == '__main__':
for yscale in YSCALES:
plot('linegraph-' + yscale, yscale)
Có ai biết cách sạch để nhận phông chữ loại 1 bằng trục đăng nhập không?
Cảm ơn!
Chỉ cần cho nhận thức, điều này cũng đã được đăng trên danh sách gửi thư của người dùng mpl: http://matplotlib.1069221.n5.nabble.com/Type-1-fonts-with-log-graphs-tt39606.html – pelson
S các tài liệu tham khảo hữu ích (không có câu trả lời cho câu hỏi này trong chúng): http://matplotlib.1069221.n5.nabble.com/Type-1-font-in-figures-needed-td10294.html & http: //nerdjusttyped.blogspot .co.uk/2010/07/type-1-fonts-and-matplotlib-figures.html – pelson