前提・実現したいこと
Pythonで分析したデータを、D3.jsで可視化したいと考えています。
その中で、listのデータをjsonに変換する必要があるのですが、
グラフの関数が動くためには、以下のようにデータを出力する必要があります。
必要なデータ
json
1[ 2 {axis:"Email",value:0.59}, 3 {axis:"Social Networks",value:0.56}, 4 {axis:"Internet Banking",value:0.42}, 5 {axis:"News Sportsites",value:0.34}, 6 ...
そこで、私は以下のようにコードを作りました。
該当のソースコード
python
1import json 2import collections as cl 3 4label = ["Email","Social Networks","Internet Banking","News Sportsites",...] 5ratio = [0.59,0.56,0.42,0.34,...] 6 7list=[] 8 9def main(): 10 for i in range(len(label)): 11 dic = cl.OrderedDict() 12 dic["axis"] = label[i] 13 dic["value"] = ratio[i] 14 list.append(dic) 15 #print("{}".format(json.dumps(ys,indent=4))) 16 17 f = open('data.json','w') 18 json.dump(list,f,indent=2,ensure_ascii=False) 19 20if __name__=='__main__': 21 main()
すると以下のような結果になります。
出力結果(少し見やすく改行しています)
json
1[ 2 {"axis":"Email","value":0.59}, 3 {"axis":"Social Networks","value":0.56}, 4 {"axis":"Internet Banking","value":0.42}, 5 {"axis":"News Sportsites","value":0.34}, 6 ...
お分かりの通り、このコードではkeyとなるaxisとvalueがstrになってしまうんですね。
これだと関数は動かないので、なんとかkeyを変えようと思ったのですが、
調べても文字列の例しか出てこないので、質問させていただきました。
初歩的なことかもしれませんが、ご回答よろしくお願いします。
補足情報
グラフは、こちらを使いたいと思っています。
https://gist.github.com/nbremer/6506614
回答1件
あなたの回答
tips
プレビュー