2017-09-17 25 views
1

誰かが私のPython/HTMLコードの修正を手伝ってくれるのだろうかと思っていました。私は、PythonのFoliumライブラリを使用してShasta湖の近くの火山の位置をプロットしようとしています。そして、CSVファイルから緯度、経度、名前、標高の欄を解凍します。 CSVファイルは、データにアクセスできるように適切にフォーマットされています(計算手段など)。データフレームを作成しているうちに、HTMLコードを印刷しても目的のマップが得られません。私は、ファイルを開こうとするためにクロムを使用しています。以下はコードです。問題を解決する助けがあれば幸いです。前もって感謝します!カイルfoliumを使ってHTMLページを作成した後に、マップを作成する

import folium 
import pandas as pd 

df = pd.read_csv('Volcanoes_USA.csv') 
latmean = df['LAT'].mean() 
lonmean = df['LON'].mean() 

map = folium.Map(location = [latmean, lonmean], zoom_start = 5, tiles = 'Stamen Terrain') 

def color(ELEV): 
    if ELEV in range(0, 1000): 
     col = 'green' 
    elif ELEV in range (1001,1999): 
     col = 'blue' 
    elif ELEV in range(2000,2999): 
     col = 'orange' 
    else: 
     col = 'red' 

for LAT,LON,NAME,ELEV in zip(df['LAT'], df['LON'], df['NAME'], df['ELEV']): 
    folium.Marker(location=[LAT, LON], popup = NAME, icon = folium.Icon(color = color(ELEV), icon = 'cloud')).add_to(map) 

print(map.save("test6.html")) 
+0

すべてが関数 '色()'を除くために見えます。値 'col'を返すことはありません。それは問題かもしれない –

+0

助けてくれてありがとう!私はfoliumがv0.4.0と0.5.0でhtmlの印刷物を更新したことを知りました。データフレームテキストの "'"記号は構文エラーの原因となるため、回避策が必要です。私はそれがHTMLの終わりの問題であるので、これをやっていく方法についてはわかりません。一時的な解決策として、回避策が見つかるまで、データフレーム内のすべての "'記号をアンダースコアに置き換えました。この問題に関する助けをいただければ幸いです。 –

+0

一重引用符で何かをエスケープする必要があるのでしょうか? –

答えて

0

文字列の引用符( ')がある場合

は、あなたが空白のページを取得します。

次の変更を行う必要があります。

popup=folium.Popup(df['NAME'],parse_html=True)) 
関連する問題