pyecharts--柱状图(包含标题、图例、X轴、Y轴、数据标签的设置)根据⽬的并运⽤常识选择最有效的图形来传达要点。
1 如果要说明空间关系,则地图或照⽚可能是最佳选择。
2 如果要说明⽐例,饼状图或条形图是⾸选。
3 如果要说明两个变量之间的关系,可尝试折线图或散点图。
柱状图/条形图
将⼀⼈按⼀定标准分为A,B,C,D四种类型,作图展⽰各类型下⼈的年龄分布。
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.globals import ThemeType
columns =["A","B","C","D"]
data1 =[26.86,15.56,10.62,14.07]
data2 =[36.87,28.61,25.86,41.13]
data3 =[24.38,28.58,30.32,22.74]
data4 =[10.15,21.31,26.64,18.99]
data5 =[1.74,5.95,6.57,3.07]
bar=(
Bar(
#        init_opts=opts.InitOpts(theme=ThemeType.VINTAGE)  # 设置主题
#        width='800px',  # 指定图⽚宽度
#        height='400px',  # 指定图⽚⾼度
)
.add_xaxis(columns)
.
add_yaxis("≤24", data1)
.add_yaxis("25-34", data2)
.add_yaxis("35-49", data3)
.add_yaxis("50-64", data4)
.add_yaxis("≥65", data5)
#        .set_colors(["blue","red","black","green","orange"])  # 柱⼦的颜⾊
#        .reversal_axis()  # xy轴交换
.set_global_opts(
# #            标题设置
#            title_opts=opts.TitleOpts(title='title',
#                                      subtitle='subtitle',
# #            标题⽂字格式
#                                      title_textstyle_opts=opts.TextStyleOpts(color='red',
#                                                                              font_size=12,
#                                                                              font_family='Times New Roman',
#                                                                              font_weight='bold',
#
# #            副标题⽂字格式),
#                                      subtitle_textstyle_opts=opts.TextStyleOpts(color='blue',
#                                                                                  font_size=12,
#                                                                                  font_family='Times New Roman',
#                                                                                  font_weight='bold',
#                                                                                ),
#                                      )
#            图例设置
legend_opts=opts.LegendOpts(
pos_left='right',    # 图例放置的位置,分上下左右,可⽤左右中表⽰,也可⽤百分⽐表⽰
pos_top='center',
orient='vertical',  # horizontal、vertical #图例放置的⽅式横着放or竖着放
textstyle_opts=opts.TextStyleOpts(
font_size=12,
font_family='Times New Roman',
),
)
,
xaxis_opts=opts.AxisOpts(
xaxis_opts=opts.AxisOpts(
name='Type',
name_location='middle',
name_gap=20,
#                x轴名称的格式配置
name_textstyle_opts=opts.TextStyleOpts(
font_family='Times New Roman',
font_size=14,
),
#                坐标轴刻度配置项
axistick_opts=opts.AxisTickOpts(
#                    is_show=False,  # 是否显⽰
is_inside=True,  # 刻度线是否在内侧
),
#                坐标轴线的配置
axisline_opts=opts.AxisLineOpts(
linestyle_opts=opts.LineStyleOpts(
width=1,
color='black',
)
)
,
#                坐标轴标签的配置
axislabel_opts=opts.LabelOpts(
font_size=12,
font_family='Times New Roman',
),
),
yaxis_opts=opts.AxisOpts(
name='Proportion(%)',
name_location='middle',
name_gap=30,
name_textstyle_opts=opts.TextStyleOpts(
font_family='Times New Roman',
font_size=14,
color='black',
#                    font_weight='bolder',
),
axistick_opts=opts.AxisTickOpts(
#                    is_show=False,  # 是否显⽰
is_inside=True,  # 刻度线是否在内侧
),
axislabel_opts=opts.LabelOpts(
font_size=12,
font_family='Times New Roman',
),
),
#            显⽰⼯具栏
toolbox_opts=opts.ToolboxOpts(is_show=True), )
.set_series_opts(
label_opts=opts.LabelOpts(
#            position="Top",
font_size=12,
font_family='Times New Roman',
)
)
)
输出结果
通过snapshot-selenium将pyecharts做出的图导出为png格式安装
pip install snapshot_selenium
调⽤
der import make_snapshot
fontweight属性boldfrom snapshot_selenium import snapshot
make_snapshot(snapshot, der(),"D:\\test.png")

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。