【发布时间】:2019-08-23 14:15:03
【问题描述】:
我想根据值更改标记颜色,所以我尝试了下面的代码
import pandas as pd
df = pd.read_csv("E:/values.csv")
def SetColor(x):
if(x < 100):
return "orange"
elif(100<= x <=200):
return "white"
elif(x > 200):
return "black"
import plotly.offline as pyo
import plotly.graph_objs as go
trace1 = go.Scatter(
x=df['Date'], y=df['Show1'],
line = dict(color=list(map(SetColor, df['Show1']))),
mode='markers',name='Show1'
)
fig = go.Figure(data=[trace1], layout=layout)
pyo.plot(fig,filename='final_plot.html')
但是我得到了错误消息
ValueError:
Invalid value of type 'builtins.list' received for the 'color' property of scatter.line
Received value: ['black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'white', 'white', 'white', 'white', 'white', 'white', 'white', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'black', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange', 'orange']
我错过了什么
【问题讨论】:
-
这方面有什么帮助吗?
-
看起来,根据the docs,
line不接受值列表。您正在使用mode='markers',因此您可以尝试设置标记的颜色,因为它确实接受列表。 -
你能解释一下吗...用示例代码
标签: javascript python plotly plotly-dash plotly-python