上述代码报错 TypeError: can only concatenate str (not "function") to str
时间: 2023-08-14 14:09:03 浏览: 144
非常抱歉,之前的回答中出现了错误。在设置 `label_opts` 的 `formatter` 属性时,应该使用字符串形式的 JavaScript 代码,而不是使用 `JsCode` 对象。请使用以下代码进行修改:
```python
c = (
Map()
.add("东北地区", region1.values.tolist(), "china")
.add("华北地区", region2.values.tolist(), "china")
.add("华东地区", region3.values.tolist(), "china")
.add("华南地区", region4.values.tolist(), "china")
.add("华中地区", region5.values.tolist(), "china")
.add("西北地区", region6.values.tolist(), "china")
.add("西南地区", region7.values.tolist(), "china")
.set_global_opts(
title_opts=opts.TitleOpts(
title="2022年生态保护与环境治理业各地区企业数量分布",
pos_top="top",
pos_left="center"
),
visualmap_opts=opts.VisualMapOpts(
max_=0.4714285714285714,
min_=0.014285714285714285,
is_show=True,
range_color=["lightskyblue", "yellow", "orangered"],
is_piecewise=True
),
legend_opts=opts.LegendOpts(
pos_top="bottom",
pos_left="right"
)
)
.set_series_opts(
label_opts=opts.LabelOpts(
font_size=6,
position="bottom",
horizontal_align="left",
formatter="""
function(params) {
var color = params.data.value[2];
if (color) {
return params.name;
} else {
return '';
}
}
"""
)
)
)
# 查看图像
c.render_notebook()
```
请注意,我将 `formatter` 属性中的 JavaScript 代码直接作为字符串传递给了 `formatter`。这样就修复了之前出现的错误。非常抱歉给您带来的困扰,谢谢您的耐心!如果还有其他问题,请随时提问。
阅读全文