有时,我们绘制图表需要特定指定柱子的颜色,以显示出它的重要性,本文使用Pyecharts提供的js代码的接口完成。
未指定颜色情况:
指定柱子颜色:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = "cenjanway" from pyecharts import options as opts from pyecharts.charts import Bar from pyecharts.commons.utils import JsCode X = ["商品A", "商品B", "商品C"] values = [50,70,90] # 指定柱子颜色的js代码 color_function = """ function (params) { if (params.value < 60) return 'red'; else if (params.value > 50 && params.value < 90) return 'blue'; else return 'orange'; } """ c = ( Bar() .add_xaxis(X) .add_yaxis("" , values , category_gap="60%" , itemstyle_opts=opts.ItemStyleOpts(color=JsCode(color_function)) ) .set_series_opts( label_opts=opts.LabelOpts( position="right", formatter=JsCode("function (params) {return params.value + '%'}") ) ) .set_global_opts(title_opts=opts.TitleOpts(title="各个商品销量比较")) .render("test.html") )