plotext在SSH连接的Linux终端中块元素显示异常,定位为ConEmu问题
解决ConEmu中plotext块元素显示为问号的问题
问题背景
通过SSH连接Linux终端,使用plotext库绘制图形时,块元素(如▝、▖)无法正确显示,被替换为问号。执行的命令为:
python3 -c "import plotext as plt; y = plt.sin(); plt.scatter(y); plt.title('Scatter Plot'); plt.show()"
终端TERM环境变量设置为xterm-256color,经排查问题由ConEmu终端导致。
解决方案
1. 调整ConEmu编码与字体设置
- 打开ConEmu设置(快捷键
Win+Alt+P) - 进入「Features」→「Terminal」选项卡:
- 勾选「Unicode (UTF-8)」,取消勾选「Use legacy console (requires restart)」
- 切换到「Fonts」选项卡:
- 选择支持Unicode块元素的字体,例如
Consolas、DejaVu Sans Mono或Fira Code,这类字体对终端图形字符的兼容性更好
- 选择支持Unicode块元素的字体,例如
2. 修改ConEmu的TERM环境变量
- 在设置中进入「Environment」选项卡
- 在环境变量输入框添加或修改:
或尝试TERM=vt220TERM=xterm(部分场景下该值比xterm-256color在ConEmu中兼容性更佳) - 保存设置后重启ConEmu,重新建立SSH连接测试
3. 强制plotext使用ASCII兼容字符集
如果上述设置无效,可让plotext使用ASCII字符替代Unicode块元素,修改命令为:
python3 -c "import plotext as plt; y = plt.sin(); plt.scatter(y); plt.title('Scatter Plot'); plt.set_character_set('ascii'); plt.show()"
此方法会降低图形精细度,但能确保在ConEmu中正常显示。
内容的提问来源于stack exchange,提问作者link89
相关产品推荐
相关产品推荐

