Dac*_*hao 1 python matplotlib python-3.x pandas
当我在Python 3中绘制带有汉字标签的图形时,它无法正常工作:
]
我的代码:
fig = pd.DataFrame({
'?????':bond,
'????????':bondFunds,
'??????????':indexFunds,
'????':ret})
fig.plot()
plt.legend(loc=0)
plt.title('?????',
fontproperties='SimHei',
fontsize='xx-large')
plt.grid(True)
plt.axis('tight')
Run Code Online (Sandbox Code Playgroud)
小智 6
尝试这个:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] # Or any other Chinese characters
Run Code Online (Sandbox Code Playgroud)
您需要legend使用propkwag 将字体属性显式传递给函数:
from matplotlib import font_manager
fontP = font_manager.FontProperties()
fontP.set_family('SimHei')
fontP.set_size(14)
fig = pd.DataFrame({
'?????':bond,
'????????':bondFunds,
'??????????':indexFunds,
'????':ret})
fig.plot()
# Note the next lines
plt.legend(loc=0, prop=fontP)
plt.title('?????', fontproperties=fontP)
plt.grid(True)
plt.axis('tight')
Run Code Online (Sandbox Code Playgroud)
小智 5
扩展Raphael的答案,对于那些使用macOS的人来说,系统中文字体是黑体。要检查您是否拥有它:
import matplotlib
print([f for f in matplotlib.font_manager.fontManager.ttflist if 'Heiti' in f.name])
Run Code Online (Sandbox Code Playgroud)
然后,执行以下操作:
matplotlib.rcParams['font.family'] = ['Heiti TC']
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅此处的链接。
| 归档时间: |
|
| 查看次数: |
3871 次 |
| 最近记录: |