【发布时间】:2019-04-06 04:57:46
【问题描述】:
我刚刚安装了 Python 3.7.1 并运行了以下脚本:
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots(); frame = plt.gca()
x = np.linspace(0,2*np.pi,500)
y = np.sin(x)
ax.set_xticks(np.array([0,np.pi,2*np.pi]))
ax.set_yticks(np.array([-1,0,1]))
frame.set_xticklabels(['$0$', '$\pi$', '$2\pi$'], fontsize=20)
frame.set_yticklabels(['$-1$', '$0$', '$1$'], fontsize=20)
ax.plot(x, y)
plt.tight_layout()
plt.show()
回到 Python 2.7,x 和 y 刻度标签会按照我的意愿以 LaTeX 形式显示。现在它们默认使用一种不那么漂亮的字体,我不知道如何以 LaTeX 字体显示它们。我需要安装更新版本的 matplotlib 吗?
【问题讨论】:
-
我将 set_xticklabels 行改为:
frame.set_xticklabels(['$0$', '$\pi$', '$2\pi$'], fontsize=20, usetex=True)。这确实会产生 LaTeX,但我不喜欢图表的外观——标签比以前不那么粗体了,而且刻度线现在在图的外侧而不是图的内侧。 -
默认情况下,从绘图内部移动到外部的刻度在
matplotlib v2.0:matplotlib.org/users/dflt_style_changes.html#ticks 中完成,该链接显示如何恢复到以前的行为
标签: python matplotlib latex