python pyecharts包之柱形图
基本的柱形图
最基本的使用pyecharts包绘制柱形图
#需要加载的包
#柱形图的包
from pyecharts.charts import Bar
#pyecharts配置项的包
from pyecharts import options as opts
#pyecharts中使用js的包
from pyecharts.commons.utils import JsCode
#Pyecharts图表生成需要一些静态资源文件,通过下面代码更改为kesci提供的资源,提高加载速度
from pyecharts.globals import CurrentConfig
CurrentConfig.ONLINE_HOST = "https://cdn.kesci.com/lib/pyecharts_assets/"
'''
需要加载的数据
x 轴和y轴数据
'''
x_data = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']
y_data1 = [123, 153, 89, 107, 98, 23]
y_data2 = [44,55,66,77,888,99]
y_data3 = [173, 103, 989, 607, 98, 10]
bar=(Bar()
.add_xaxis(x_data)
.add_yaxis('数据集1',y_data1)
.add_yaxis('数据集2',y_data2)
.add_yaxis('数据集3',y_data3)
) #这里通过柱状图的方法来绘制图表
bar.render(r'D:/柱形图基础示例.html')
这里可以点击数据集来选中或者取消 ,也可以从代码把设置y轴数据给注释掉或删除
通过循环将数据添加y轴上
'''
需要加载的数据
x 轴和y轴数据
'''
x_data = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']
y_data1 = [123, 153, 89, 107, 98, 23]
y_data2 = [44,55,66,77,888,99]
y_data3 = [173, 103, 989, 607, 98, 10]
需要加载的数据
x 轴和y轴数据
x_data = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']
y_data1 = [123, 153, 89, 107, 98, 23]
y_data2 = [44,55,66,77,888,99]
y_data3 = [173, 103, 989, 607, 98, 10]
#将数据做一个处理方便循环写入柱形图中
data=[y_data1,y_data2,y_data3]
y_name=['数据1','数据2','数据3']
bar=Bar() #这里通过柱状图的方法来绘制图表
bar.add_xaxis(x_data) #设置x轴数据
for i in range(len(data)):
bar.add_yaxis(y_name[i],data[i])
bar.render(r'D:/柱形图循环示例.html')
```python
在这里插入代码片
生成的图跟上面的差不多
也可以使用函数将生成图的代码进行封装,后面需要生成多个图的时候,可以循环使用函数方法去生成就方便很多这边我就不细说了
Jscode包 对pyecharts包中使用js代码的集成,对于会js的,可太友好了,也很实用
一般像同一个数组的柱形图是不可以改变其中某个颜色的,这边在配置项中就可以单独调用js代码中对应需要生成颜色的柱形图
原始图、、配置项中使用js生成的颜色
'''
需要加载的数据
x 轴和y轴数据
'''
#颜色的js代码 这边可以把js代码写好,用的时候直接调用就好,也可以写到JsCode里面,一般不建议,
#不好维护和可读性差,推荐在外面生成js函数直接调用
color_function="""
function(params){
if(params.value>=120){
return 'red';
}
return 'blue';
}
"""
x_data = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']
y_data1 = [123, 153, 89, 107, 98, 23]
y_data2 = [44,55,66,77,888,99]
y_data3 = [173, 103, 989, 607, 98, 10]
#将数据做一个处理方便循环写入柱形图中
color1=['red','red','blue','blue','blue']
bar=Bar() #这里通过柱状图的方法来绘制图表
bar.add_xaxis(x_data) #设置x轴数据
bar.add_xaxis(x_data)
#数据集中添加itemstyle_opts配置项,这是基本常用的配置项
bar.add_yaxis('数据集1',y_data1,itemstyle_opts=opts.ItemStyleOpts(color=JsCode(color_function)))
bar.add_yaxis('数据集2',y_data2,itemstyle_opts=opts.ItemStyleOpts(color='green'))
bar.render(r'D:/柱形图配置项js示例.html')
原始图这绿色够丑的,凑合用用吧
数据集1就是用js代码换的颜色对每一个主子的颜色都是可控的,用的还是js,挺好用的,推荐使用。
可视化的前提还是数据要清洗成自己想要的样子,不过把图片美化成自己或者客户想要的样子真的很不错,希望大家可以积极探索,我自己也是个新人,目前做的是数据分析,大家有问题可以在评论下留言,要是懂得我会给个建议。