pyecharts
1、下载pyecharts第三方库
2、引用pyecharts
3、运行
这边写了一个样例代码,然后点击运行,之后会出现一个.xml的文件
4、在本地浏览器打开
复制.html的路径在浏览器打开,
全局配置项
1、初始化全局配置
c ={
Bar(
#InitOpts:初始化配置项
init_opts=opts.InitOpts(
width='800px',
height='800px',
renderer=RenderType.CANVAS, #渲染风格,可选:
page_title='网页标题',
theme=ThemeType.WALDEN , #主题
bg_color='blue'
)
)
.add_xaxis(Faker.choose())
.add_yaxis('商家A',Faker.values())
.add_yaxis('商家B',Faker.values())
.render("生成图表.html")
}
2、标题配置项、区域缩放配置项
.set_global_opts(
# 标题配置项
title_opts=opts.TitleOpts(
title='柱形图', #主标题
title_link='https://www.baidu.com',
title_target='blank',
subtitle='副标题',
# 位置
pos_left='left',
padding=10, #内边距
item_gap=10, #主副标题间隙
),
# 区域缩放配置项
datazoom_opts=opts.DataZoomOpts(
is_show=True,
type_='slider', #组件的类型
is_realtime=True, #拖动时图标实时更新
)
)
3、图例配置项
#图例配置项
legend_opts=opts.LegendOpts(
is_show=True, #图例显示
pos_left='center', #位置
orient='vertical', #图例垂直
selected_mode=True, #图例点击
align='auto', #图例与文字对齐方式
item_height='',
item_width='',
legend_icon='circle' #图标形状
)
4、视觉映射
#视觉映射配置项
visualmap_opts=opts.VisualMapOpts(
is_show=True,
type_='color', #color size
min_=0,
max_=100,
range_opacity=0.5, #透明度
range_text=['max','min'],#两端文本
range_color=[] , #过渡颜色
is_piecewise=True, #分段型
),
5、提示框工具
#提示框工具
tooltip_opts=opts.TooltipOpts(
is_show=True,
………
)
6、坐标轴配置项、提示线
#坐标轴配置项
xaxis_opts=opts.AxisOpts(
is_show=True,
#...
),
yaxis_opts=opts.AxisOpts(
is_show=True,
),
#提示线
toolbox_opts=opts.TooltipOpts(trigger='axis')
系列配置项
1、图元、线、标签样式配置项
#图元样式配置项
itemstyle_opts=opts.ItemStyleOpts(
color='blue',
#.......
),
#线样式配置项
linestyle_opts=opts.LineStyleOpts(
is_show=True,
width=0,
color='yellow',
),
#标签样式配置项
label_opts=opts.LabelOpts(
#....
),
2、标志点、标志线配置项样式
markpoint_opts=opts.MarkPointOpts(
data=[
opts.MarkPointItem(type_='max',symbol='pin',symbol_size=50),
opts.MarkPointItem(type_='min'),
]
),
#标记线
markline_opts=opts.MarkLineOpts(
#.....
)
常用图形
一、柱状图
1、基本状图
from pyecharts.charts import Bar
import pyecharts.options as opts
from pyecharts.faker import Faker
Faker.choose()
Faker.values()
c = (
Bar()
.add_xaxis(Faker.choose())
.add_yaxis('A',Faker.values())
.add_yaxis('b',Faker.values())
.render("生成图表.html")
)
2、堆叠柱状图
.add_yaxis('A',Faker.values(),stack='a') #堆叠柱状图
.add_yaxis('b',Faker.values(),stack='a')
3、条形图
#条形图
.reversal_axis()
4、直方图
.add_yaxis('b',Faker.values(),stack='a',category_gap='0') #直方图
5、
二、饼状图
from pyecharts.charts import Pie
import pyecharts.options as opts
from pyecharts.faker import Faker
Faker.choose()
Faker.values()
data = list(zip(Faker.choose(),Faker.values()))
c = (
Pie()
.add('', data)
# .add('',[list(x) for x in zip(Faker.choose(),Faker.values())])
.render("生成图表.html")
)
三、玫瑰图
from pyecharts.charts import Pie
import pyecharts.options as opts
from pyecharts.faker import Faker
Faker.choose()
Faker.values()
data = list(zip(Faker.choose(),Faker.values()))
c = (
Pie()
# .add('',[list(x) for x in zip(Faker.choose(),Faker.values())])
.add('', data,
rosetype='radius')
.render("生成图表.html")
)
四、折线图
1、基本折线图
from pyecharts.charts import Line
import pyecharts.options as opts
from pyecharts.faker import Faker
c = (
Line()
.add_xaxis(Faker.choose())
.add_yaxis('love 坤',Faker.values(),is_smooth=True)
.add_yaxis('小黑子',Faker.values())
.render("生成图表.html")
)
2、面积图
.add_yaxis('love 坤',Faker.values(),is_smooth=True,areastyle_opts=opts.AreaStyleOpts(opacity=0.5)) #面积图
五、散点图
from pyecharts.charts import Scatter
import pyecharts.options as opts
from pyecharts.faker import Faker
c = (
Scatter()
.add_xaxis(Faker.choose())
.add_yaxis('',Faker.values())
.add_yaxis('',Faker.values())
.render("生成图表.html")
)
六、雷达图
from pyecharts.charts import Radar
import pyecharts.options as opts
from pyecharts.faker import Faker
v1 = [[500,600,450,320,500,600]]
v2 = [[450,300,500,600,340,260]]
c = (
Radar()
.add_schema(
schema=[
opts.RadarIndicatorItem(name='项目1', max_=600),
opts.RadarIndicatorItem(name='项目2', max_=400),
opts.RadarIndicatorItem(name='项目3', max_=700),
opts.RadarIndicatorItem(name='项目4', max_=600),
opts.RadarIndicatorItem(name='项目5', max_=700),
opts.RadarIndicatorItem(name='项目6', max_=650),
]
)
.add('数据a',v1,color='red')
.add('数据b',v2,color='green')
.render("生成图表.html")
)