Matplotlib 如果标签包含土耳其语字符,如ş;,则熊猫不会打印öü;

Matplotlib 如果标签包含土耳其语字符,如ş;,则熊猫不会打印öü;,matplotlib,pandas,Matplotlib,Pandas,我的问题是,我无法在标签上画出像ş,ö,ü,İ,Ğ,Ğ这样的土耳其角色 它只给出此输出-->matplotlib.figure.figure(0x7f8499386050处)不显示图形 我怎样才能修好它 这是我的密码: def draw_pie(year,y,by): v=data[data['yil']==year] v=v.sort(y,ascending=False).head(20) v=v.groupby(by).aggregate('sum')

我的问题是,我无法在标签上画出像ş,ö,ü,İ,Ğ,Ğ这样的土耳其角色

它只给出此输出-->matplotlib.figure.figure(0x7f8499386050处)不显示图形

我怎样才能修好它

这是我的密码:

def draw_pie(year,y,by):

    v=data[data['yil']==year]

    v=v.sort(y,ascending=False).head(20)

    v=v.groupby(by).aggregate('sum')

    veri= v[ y ]

    veri.plot(figsize=(10,10),kind='pie', labels=v.index,
               autopct='%.2f', fontsize=20)
    plt.show()

    draw_pie(2014,'toplam_hasilat','tur')
不要显示因为tur包含“Aşk”、“Gençlik”

没有土耳其语角色也没关系


提前感谢您

假设您决定使用通用编码:

您首先必须告诉源代码是utf-8(下面的第一行)。然后必须将字符串解码为utf-8。如果python3可以工作,如果python2可以让它像python3一样工作:

示例(Python 2.7.8)

您也可以明确地解码每个字符串,但这可能不是很方便(下面有两种解决方案)


我已经用下面的方法解决了我的问题

我试图用土耳其字体从Excel中读取数据。熊猫在我的Jupyter noteboook中绘制数据失败。然后我补充说

# -*- coding: utf-8 -*-
from __future__ import unicode_literals

在第一个单元格中,运行所有单元格。然后我得到了我的阴谋

非常感谢,真的,我也意识到,它还有其他问题。我还可以说:(
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt

plt.plot(range(10), range(10))
plt.title("Simple Plot şöüİĞğ".decode('utf-8'))
plt.xlabel(u"Simple Plot şöüİĞğ")
plt.show()
# -*- coding: utf-8 -*-
from __future__ import unicode_literals