2015-08-31 48 views
4

我目前正在使用plotly服務來繪製一些水質數據。我添加了一些線條來表示水質的各個階段,它們都是陰影,因此它們是綠色,黃色和紅色。禁用跟蹤上的懸停信息,劇情

我已經能夠從圖例中刪除一些不必要的行,但是當它們懸停在數據上時它們仍然顯示。我在這裏看着text and annotations而是試圖用「hoverinfo」參數時,我得到一個

"plotly.exceptions.PlotlyDictKeyError: Invalid key, 'hoverinfo', for class, 'Scatter'."

錯誤。有沒有其他的方式來做這個散點圖?到目前爲止,我已經看過,並沒有發現任何有用的東西

這裏是如何我目前正在嘗試建立跟蹤:

badNTULevel = Scatter(                    
x=[],                       
y=[100],                       
mode='lines',                     
line=Line(                      
    opacity=0.5,                     
    color='rgb(253,172,79)',                  
    width=1,                      
),                        
stream=Stream(                     
    token=stream_ids[3],                   
    maxpoints=80                     
),                        
hoverinfo='none',                    
fill='tonexty',                     
name="Water Treatment Plants Can't Process over 100" 
)           

任何幫助,將不勝感激。

+1

您必須將「validate = False」添加到劇情調用中,並使用「dict」而不是「Scatter」。這將繞過您所看到的驗證錯誤。看到這個例子更多:https://plot.ly/python/text-and-annotations/#disabling-hover-text –

+0

@ChrisP我只是有機會嘗試。不幸的是,即使驗證設置爲false,它仍然會給出相同的錯誤。請看這個更大的代碼片段(在這裏)(http://pastebin.com/N84UpBv0)它在第134行拋出錯誤。 – ChrisDevWard

+1

好吧,也可以把'Figure'改成'dict'(它只是一個簡單的子類)。長話短說,驗證過時了特色鍵,每當使用'plotly.graph_objs'中的子類'dict'時,就會導致驗證錯誤。 –

回答

3
from plotly.offline import plot 
import plotly.graph_objs as go 

def spline(x_axis,loop): 

    trace = go.Scatter(
     x = x_axis, 
     y = loop[i], 
     fill = 'tonexty', 
     mode ='lines', 
     showlegend = False, 
     hoverinfo='none' 
     ) 

    data = [trace] 



    layout = go.Layout(
     title='Graph title here', 
     height=600, 
     xaxis=dict(
      autorange=True 
     ), 
     yaxis=dict(
      autorange=True 
     ) 
    ) 
    fig = go.Figure(data=data, layout=layout) 
    # plot(fig, filename='spline.html') 
    plot_div = plot(fig, output_type='div', include_plotlyjs=False) 
    return plot_div 
+2

@Shinto_Joseph你可以添加一些解釋到你的代碼 – MrLeeh

+0

其作爲函數寫入... spline_graph = plots.spline(x_axis,循環,列,spline_percent,final_row)。這種方式你會得到一個腳本到變量spline_graph,你可以使用ajax傳遞並顯示到html頁面而不刷新頁面。 –

+0

在上面的代碼中只給出x軸的輸入,而循環只是y軸.showlegend = False, hoverinfo ='none'將禁用懸停和圖例 –