2016-08-13 22 views
0

的情況是,沒有JSON對象可以被解碼,JvectorMap轉換

進出口新的蟒蛇,並嘗試使用jvectorMap由jVectorMap提供Converter.py插件生成,

我已經安裝了OSGEO4W(安裝桌面系統)上的Windows 7 64位。 Python 2.7,GDAL 2.1.0和Shapely也安裝在OSGEO4W下。

我下載的shapefile

ne_10m_admin_1_states_provinces.shp 

我把這種形狀文件converter.py目錄,然後我打開OSGEO4W外殼並導航到converter.py目錄並運行以下命令生成俄羅斯地圖學習地圖的轉換。

python converter.py ne_10m_admin_1_states_provinces.shp test-map.js --width 400 --where "ISO_3166_2 = 'RU-' and code_hasc!='' --country_name_index 12 --country_code_index 18 --minimal_area 4000000 --buffer_distance -0.5 --simplify_tolerance 10000 --longitude0 54.8270 --name russia 

我從這篇文章中採取了此命令如何生成jvectormap jquery插件的新地圖?但我面對錯誤JSON對象進行解碼,具有下面的圖片一看 enter image description here

幫我解決我的問題,正如我已經指出IM新的Python和jvector地圖

回答

0

我懷疑的問題是,通過由於在--where末尾缺少雙引號,腳本中的參數無法轉換爲JSON。它可能應該是:

--where "ISO_3166_2 = 'RU-' and code_hasc!=''" 

編輯

原來這是一個更大的問題。如果你看一下converter.py的源代碼,你會發現這一點:

args = {} 
if len(sys.argv) > 1: 
    paramsJson = open(sys.argv[1], 'r').read() 
else: 
    paramsJson = sys.stdin.read() 
paramsJson = json.loads(paramsJson) 

因此,它看起來像這樣的腳本不能叫這種方式。它要麼等待一個帶有這個JSON的文件,要麼等待params通過stdin傳遞。 documentation似乎同意這一點。

+0

仍然是同樣的錯誤 –

+0

我打印出json之前解碼它在文檔中打印特殊字符 –

+0

,他們使用proccessor.py,而不是converter.py,我很困惑 –

相關問題