Ahm*_*007 5 python matplotlib python-3.x arabic-support
xlabel 和 ylabel 不显示阿拉伯语
x = [2, 4, 6, 8, 10]
y = [6, 7, 8, 9, 10]
plt.bar(x, y, label='Bar1', color='red')
plt.xlabel("???????")
plt.ylabel("?????????")
plt.show()
Run Code Online (Sandbox Code Playgroud)
小智 6
您首先需要安装arabic-reshaper和python-bidi。
import arabic_reshaper
from bidi.algorithm import get_display
import matplotlib.pyplot as plt
x = [2, 4, 6, 8, 10]
y = [6, 7, 8, 9, 10]
xlbl = get_display( arabic_reshaper.reshape('???????'.decode('utf8')))
ylbl = get_display( arabic_reshaper.reshape('?????????'.decode('utf8')))
plt.bar(x, y, label='Bar1', color='red')
plt.xlabel(xlbl, fontdict=None, labelpad=None)
plt.ylabel(ylbl, fontdict=None, labelpad=None)
plt.show()
Run Code Online (Sandbox Code Playgroud)
情节阿拉伯语

Imp*_*est -6
如果您使用 unicode 字符串 ( u"\xd8\xa7\xd9\x84\xd9\x81\xd9\x88\xd8\xa7\xd8\xb5\xd9\x84") 而不是通常的字符串,它应该可以工作。
x = [2, 4, 6, 8, 10]\ny = [6, 7, 8, 9, 10]\n\nplt.bar(x, y, label=\'Bar1\', color=\'red\')\nplt.xlabel(u"\xd8\xa7\xd9\x84\xd9\x81\xd9\x88\xd8\xa7\xd8\xb5\xd9\x84")\nplt.ylabel(u"\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb1\xd8\xaa\xd9\x8a\xd8\xa8\xd8\xa7\xd8\xaa")\nplt.show()\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n或者,为了获得正确的顺序
\n\nimport matplotlib.pyplot as plt\nx = [2, 4, 6, 8, 10]\ny = [6, 7, 8, 9, 10]\n\nplt.bar(x, y, label=\'Bar1\', color=\'red\')\nplt.xlabel(u"\xd8\xa7\xd9\x84\xd9\x81\xd9\x88\xd8\xa7\xd8\xb5\xd9\x84"[::-1])\nplt.ylabel(u"\xd8\xa7\xd9\x84\xd8\xaa\xd8\xb1\xd8\xaa\xd9\x8a\xd8\xa8\xd8\xa7\xd8\xaa"[::-1])\nplt.show()\nRun Code Online (Sandbox Code Playgroud)\n\n\n
| 归档时间: |
|
| 查看次数: |
3038 次 |
| 最近记录: |