Размер символов LaTeX на этикетках осей на графике Python [дубликат]

В ответах выше не обсуждается многомерное разбиение массивов, которое возможно с использованием знаменитого пакета numpy:

Нарезка также применяется к многомерным массивам.

# Here, a is a numpy array

>>> a
array([[ 1,  2,  3,  4],
       [ 5,  6,  7,  8],
       [ 9, 10, 11, 12]])
>>> a[:2,0:3:2]
array([[1, 3],
       [5, 7]])

Параметр «: 2» ​​перед запятой работает с первым измерением и «0: 3: 2» после того, как запятая работает во втором измерении.

33
задан ncRubert 6 July 2012 в 20:05
поделиться

2 ответа

Чтобы текст tex-style / mathtext выглядел как обычный текст, вам нужно установить шрифт mathtext в Bitstream Vera Sans,

import matplotlib
matplotlib.rcParams['mathtext.fontset'] = 'custom'
matplotlib.rcParams['mathtext.rm'] = 'Bitstream Vera Sans'
matplotlib.rcParams['mathtext.it'] = 'Bitstream Vera Sans:italic'
matplotlib.rcParams['mathtext.bf'] = 'Bitstream Vera Sans:bold'
matplotlib.pyplot.title(r'ABC123 vs $\mathrm{ABC123}^{123}$')

. Если вы хотите, чтобы обычный текст выглядел как текст mathtext, вы можете изменить все на Stix. Это повлияет на ярлыки, титры, тики и т. Д.

import matplotlib
matplotlib.rcParams['mathtext.fontset'] = 'stix'
matplotlib.rcParams['font.family'] = 'STIXGeneral'
matplotlib.pyplot.title(r'ABC123 vs $\mathrm{ABC123}^{123}$')

Основная идея заключается в том, что вам необходимо установить одинаковые шрифты в обычном и математическом текстах, а метод этого - немного неясный , Вы можете увидеть список пользовательских шрифтов,

sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist])

Как уже упоминалось, вы также можете сделать Latex для вас одним шрифтом, установив text.usetex в rcParams, но это медленнее, а не совершенно необходимо.

30
ответ дан lindyblackburn 25 August 2018 в 06:58
поделиться

EDIT

, если вы хотите изменить шрифты, используемые LaTeX внутри matplotlib, посмотрите эту страницу

http://matplotlib.sourceforge.net/users/ usetex.html

один из примеров:

from matplotlib import rc
rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
## for Palatino and other serif fonts use:
#rc('font',**{'family':'serif','serif':['Palatino']})
rc('text', usetex=True)

Просто выберите свой любимый!

И если вам нужен жирный шрифт, вы можете попробовать \mathbf

plt.title(r'$\mathbf{W_y(\tau, j=3)}$')

EDIT 2

Ниже вы сделаете полужирный шрифт по умолчанию для вас

font = {'family' : 'monospace',
        'weight' : 'bold',
        'size'   : 22}

rc('font', **font)
12
ответ дан nye17 25 August 2018 в 06:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: