def algorithm():
model = {
'crit_value': 1.5,
'max_value': 2,
'org_values': [-0.9, -1.85, 1, -1.9, 0.75, 0.5, 3, -2, 1.3, -1.5, -0.9, 1.7],
'limited_values': []
}
return model
def describeChartInJson(model):
conf = {
'type': 'hbar',
'scale-x': {
'values': '1:12:1',
'guide': {
'line-color': 'lightgrey',
'line-width': 1,
'line-style': 'solid',
'visible': 'true'
},
'rules': [
{
'rule': '%v >=1 && %v <= 9',
'format': 'L0%v',
},
{
'rule': '%v>=10',
'format': 'L%v',
},
],
'item': {
'offsetY': "-20"
}
},
'scale-y': {
'offset-end': '69%',
'values': '-2:2:2'
},
'scale-y-2': {
'placement': 'default',
'blended': 'true',
'offset-start': '33%',
'offset-end': '35%',
'values': '-2:2:2',
},
'scale-y-3': {
'placement': 'default',
'blended': 'true',
'offset-start': '67%',
'values': '-2:2:2'
},
'series': [{
'scales': 'scale-x,scale-y',
'values': model['org_values']
},
{ 'scales': 'scale-x,scale-y-2',
'values': model['org_values']
},
{
'scales': 'scale-x,scale-y-3',
'values': model['org_values']
}
],
'plot': {
'aspect': 'cone',
'rules': [
{
'rule': '%v >= model[crit_value]',
'backgroundColor': 'red',
},
{
'rule': '%v <= -1.5',
'backgroundColor': 'red',
},
{
'rule': '%v >= -1.5 && %v <= 1.5',
'backgroundColor': 'grey'
}]
}
}
return conf
def run(get_parameters):
model = algorithm()
return describeChartInJson(model)谁能告诉我为什么这个规则(' rule ':'%v >= modelcrit_value')不被识别?据我所知,modelcrit_value返回一个浮点值,并将其与浮点值%v进行比较。当我尝试这个('rule':'%v‘>= float (模型’‘crit_value’))时,我得到错误'>=‘在'str’和'float‘的实例之间不受支持
发布于 2021-10-01 16:14:04
规则('rule': '%v >= model[crit_value]')不起作用,因为它是一个字符串。您需要发送model['crit_value']的值,而不是字符串。
相反,请尝试('rule': '%v >= ' + model['crit_value'])。
https://stackoverflow.com/questions/69403288
复制相似问题