2017-05-12 24 views
1

Bokehを使用してのようなヒートマップを作成しようとしています。ここ は私がヒートマップPython Bokeh空のヒートマップ

Day Code Total 
0 1 6001 44 
1 1 6002 40 
2 1 6006 8 
3 1 6008 2 
4 1 6010 38 
5 1 6011 1 
6 1 6014 19 
7 1 6018 1 
8 1 6019 1 
9 1 6023 10 
10 1 6028 4 
11 2 6001 17 
12 2 6010 2 
13 2 6014 4 
14 2 6020 1 
15 2 6028 2 
16 3 6001 48 
17 3 6002 24 
18 3 6003 1 
19 3 6005 1 
20 3 6006 2 
21 3 6008 18 
22 3 6010 75 
23 3 6011 1 
24 3 6014 72 
25 3 6023 34 
26 3 6028 1 
27 3 6038 3 
28 4 6001 19 
29 4 6002 105 
30 5 6001 52 
... 

そしてここでは私のコードであることを確認しようとしている、そこから私のデータフレームDataです:

from bokeh.io import output_file 
from bokeh.io import show 
from bokeh.models import (
    ColumnDataSource, 
    HoverTool, 
    LinearColorMapper 
) 
from bokeh.plotting import figure 

output_file('SHM_Test.html', title='SHM', mode='inline') 

source = ColumnDataSource(Data) 
TOOLS = "hover,save" 

# Creating the Figure 
SHM = figure(title="HeatMap", 
     x_range=[str(i) for i in range(1,32)], 
     y_range=[str(i) for i in range(6043,6000,-1)], 
     x_axis_location="above", plot_width=400, plot_height=970, 
     tools=TOOLS, toolbar_location='right') 

# Figure Styling 
SHM.grid.grid_line_color = None 
SHM.axis.axis_line_color = None 
SHM.axis.major_tick_line_color = None 
SHM.axis.major_label_text_font_size = "5pt" 
SHM.axis.major_label_standoff = 0 
SHM.toolbar.logo = None 
SHM.title.text_alpha = 0.3 

# Color Mapping 
CM = LinearColorMapper(palette='RdPu9', low=Data.Total.min(), high=Data.Total.max()) 

SHM.rect(x='Day', y="Code", width=1, height=1,source=source, 
      fill_color={'field': 'Total','transform': CM}) 

show(SHM) 

私は私のコードをexcecuteとき、私はすべてのエラーを取得しますが、私はありません下の画像に示すように空のフレームを取得するだけです。

HeatMap

私は、なぜ私はこれを取得してい¿、私のミスです見つけようとして苦労してきましたか? ¿どこにエラーがありますか?

+0

でパンダのパッケージを使用して行うことができ、それは –

+0

どこから来ている'Data'はcsvファイルから来て、第1のコードセクションに示す構造を有する。 – Xhoan

答えて

1

コードの問題は、x軸とy軸の範囲に設定するデータ型とColumnDataSourceのデータ型が異なることです。 x_rangey_rangeを文字列のリストに設定していますが、csv形式のデータを見ると整数として扱われます。

あなたの場合、曜日とコー​​ドの列が 文字列形式であることを確認してください。

これは簡単で、データ「ソース= ColumnDataSource(データ)」とは何

Data['Day'] = Data['Day'].astype('str') 
Data['Code'] = Date['Code'].astype('str') 
関連する問題