![](/img/trans.png)
[英]UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position X: character maps to <undefined>
[英]ERROR: 'charmap' codec can't decode byte 0x9d in position 3696: character maps to <undefined> (Windows Command Line, bokeh program)
我一直在嘗試運行類似於Bokeh中的gapminder程序的程序。 我有理由確定我的繪圖代碼很好,所以我不會發布它,並且大約70%的人肯定我的繪圖代碼也很好。 但是,當我跑步時
bokeh serve --show myapp.py
在Windows命令提示符下,我收到錯誤消息:'charmap'編解碼器無法解碼位置3696中的字節0x9d:字符映射到。 我知道我的代碼是用utf-8編碼的,如何確保Windows可以運行此代碼? 還是因為我計划在網站上實現,所以有沒有更好的方法來設置Bokeh服務器?
這是我的代碼的滑塊/動畫部分:
def animate_update():
patchnum = slider.value + 0.1
if patchnum > testdata['gameVersion'][slidelength]:
patchnum = testdata['gameVersion'][0]
slider.value = patchnum
def slider_update():
truepatch = slider.value
label.text = str(truepatch)
newdata = testdata[testdata['gameVersion'] == truepatch].to_dict
source.data = newdata
slider = Slider(start=testdata['gameVersion'][0], end=testdata['gameVersion'] [slidelength], value=testdata['gameVersion'][0], step=0.1, title='Patch')
slider.on_change('value', lambda attr, old, new: slider_update)
callback_id = None
def animate():
global callback_id
if button.label == '► Play':
button.label = '❚❚ Pause'
callback_id = curdoc().add_periodic_callback(animate_update, 200)
else:
button.label = '► Play'
curdoc().remove_periodic_callback(callback_id)
button = Button(label='► Play', width=60)
button.on_click(animate)
layout = layout([
[plot],
[slider, button],
], sizing_mode='scale_width')
curdoc().add_root(layout)
curdoc().title = 'Playrate, Banrate and Winrate by Patch'
output_file('champminder.html')
show(layout)
幾周前,當我嘗試在Windows環境中使用帶有特殊字符(德語變音符號)的“散景服務...”時,遇到了相同的問題。
對我來說,解決方案是以編程方式運行服務器,如以下示例所示:
在我看來,“散景服務...”無法正確處理編碼。
好的,所以我四處詢問,然后找出了導致此問題的原因。 原來是導致問題的“播放”和“暫停”按鈕旁邊的圖標,所以我只刪除了它們,然后運行了代碼。 回調和滑塊更新仍然存在問題,但是這些是我設法解決的單獨問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.