matplotlib:幽默SAN无法正确显示重音

matplotlib:幽默SAN无法正确显示重音,matplotlib,fonts,archlinux,Matplotlib,Fonts,Archlinux,这是我从matplotlib中得到的,如果我选择幽默无: 所以“DISTÀNCIA”显示为“DIST?NCIA”。它可以与其他字体一起很好地显示 代码如下: # -*- coding: utf-8 -*- from matplotlib import pyplot as plt import numpy as np from pylab import * # Estil de còmic XKCD plt.xkcd() # Etiquetes fig = plt.figure() plt.

这是我从matplotlib中得到的,如果我选择幽默无:

所以“DISTÀNCIA”显示为“DIST?NCIA”。它可以与其他字体一起很好地显示

代码如下:

# -*- coding: utf-8 -*-
from matplotlib import pyplot as plt
import numpy as np
from pylab import *

# Estil de còmic XKCD
plt.xkcd()

# Etiquetes
fig = plt.figure()
plt.title("Distància vs velocitat de les carreres d'atletisme")
plt.xlabel('distància')
plt.ylabel('velocitat de l\'atleta (homes)')

# Configuracions
ax = fig.add_subplot(1, 1, 1)
ax.set_xlim([-10, 12000])
ax.set_ylim([-1, 11])
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.get_xaxis().tick_bottom()
ax.get_yaxis().tick_left()


# Noms
plt.annotate('5000m', xy=(5000, 5.6), arrowprops=dict(arrowstyle='->'), xytext=(4500, 4))

# Data
data = np.genfromtxt('taula-fins-10000.csv', delimiter=';', skip_header=1)
event7 = [ [z[0], z[1]] for z in data if z[0] == 5000]
x = [e[0] for e in event7]
y = [e[1] for e in event7]

# Dibuix    
plt.plot(x, y, 'o')
plt.savefig("grafic-amb-nomes-una-prova.png")

字体有问题吗?

我知道这是个老问题,但也许它仍然有用

不幸的是,你面临的问题取决于幽默本身,而且没有简单的解决办法。这种字体是模仿xkcd连环漫画中使用的字体,让我们记住了单词。因此,它根本没有重音字母

我不知道这在西班牙语中是否是一种习惯,但一些印欧语系的语言使用了一种——有点难看——的变通方法,即在不带重音的字母后面加一个撇号: a--->a';é-->e'
等等…

我在运行您的代码时遇到一个错误
UnicodeDecodeError:“ascii”编解码器无法解码第4位的字节0xc3:序号不在范围内(128)
所以这是特定于Arch发行版的问题?不,它不符合我的需要。例如,用
champu'
代替
champu
听起来很奇怪。