pycharm制作柱状图

 Bar - Bar_rotate_xaxis_label

这段代码使用了pyecharts库来生成一个柱状图,图表展示了大一和大二的学习效率。具体的代码解释如下:

  • 导入Baropts模块:
from pyecharts import options as opts
from pyecharts.charts import Bar

  • 创建一个Bar实例:
c = Bar()

  • 通过add_xaxis方法设置X轴数据,即课程名称:
.add_xaxis(
    [
        "高等数学1,2",
        "C语言程序设计",
        "python程序设计",
        "大数据导论",
        "数据结构",
        "大数据与人工智能",
    ]
)

  • 通过add_yaxis方法添加两个系列的Y轴数据,分别为大一和大二的学习效率:
.add_yaxis("大一的学习效率", [10, 20, 30, 40, 50, 40])
.add_yaxis("大二的学习效率", [20, 10, 40, 30, 40, 50])

  • 通过set_global_opts方法设置全局选项,包括X轴标签旋转角度和图表的标题和副标题:
.set_global_opts(
    xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
    title_opts=opts.TitleOpts(title="信阳农林学院信息工程学院", subtitle="数据科学与大数据技术21-2"),
)

  • 最后使用render方法将图表渲染为HTML文件:
.render("bar_rotate_xaxis_label.html")

这段代码将生成一个柱状图,横轴为课程名称,纵轴为学习效率,并在图表上方添加了标题和副标题。同时,X轴的标签被旋转了-15度以适应较长的标签文字。最终图表将被渲染为一个HTML文件。

 解决标签名字过长的问题

完整代码

from pyecharts import options as opts
from pyecharts.charts import Bar

c = (
    Bar()
    .add_xaxis(
        [
            "高等数学1,2",
            "C语言程序设计",
            "python程序设计",
            "大数据导论",
            "数据结构",
            "大数据与人工智能",
        ]
    )
    .add_yaxis("大一的学习效率", [10, 20, 30, 40, 50, 40])
    .add_yaxis("大二的学习效率", [20, 10, 40, 30, 40, 50])
    .set_global_opts(
        xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),   #此行代码旋转标签的角度
        title_opts=opts.TitleOpts(title="信阳农林学院信息工程学院", subtitle="数据科学与大数据技术21-2"),
    )
    .render("bar_rotate_xaxis_label.html")
)

 

 

 Bar - Bar_stack0

叠层柱状图

这段代码使用了pyecharts库生成了一个堆叠柱状图,图表展示了学习知识所占百分比的分布情况。具体的代码解释如下:

  • 导入BaroptsFaker模块:
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Faker

  • 创建一个Bar实例:
c = Bar()

  • 通过add_xaxis方法设置X轴数据,即课程名称:
.add_xaxis(
    [
        "高等数学1,2",
        "C语言程序设计",
        "python程序设计",
        "大数据导论",
        "数据结构",
        "大数据与人工智能",
    ]
)

  • 通过add_yaxis方法添加两个系列的Y轴数据,分别为大一和大二的学习效率,并指定stack参数为同一个值,表示这两个系列会堆叠在一起:
.add_yaxis("大一的学习效率", [10, 20, 30, 40, 50, 40], stack="stack1")
.add_yaxis("大二的学习效率", [20, 30, 50, 60, 70, 80], stack="stack1")

  • 通过set_series_opts方法设置系列选项,使用label_opts参数来隐藏标签:
.set_series_opts(label_opts=opts.LabelOpts(is_show=False))

  • 通过set_global_opts方法设置全局选项,包括X轴标签旋转角度和图表的标题:
.set_global_opts(
    xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
    title_opts=opts.TitleOpts(title="信息工程学院学习知识所占百分比"),
)

  • 最后使用render方法将图表渲染为HTML文件:
.render("bar_stack0.html")

这段代码将生成一个堆叠柱状图,横轴为课程名称,纵轴为学习效率,并且大一和大二的学习效率会堆叠在一起显示。同时,X轴的标签被旋转了-15度以适应较长的标签文字。标签部分被设置为不显示。最终图表将被渲染为一个HTML文件。

可以求比例

完整代码:

from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Faker

c = (
    Bar()
    .add_xaxis(
        [
            "高等数学1,2",
            "C语言程序设计",
            "python程序设计",
            "大数据导论",
            "数据结构",
            "大数据与人工智能",
        ]
    )
    .add_yaxis("大一的学习效率", [10, 20, 30, 40, 50, 40],stack="stack1")  # stack="stack1" 表示同一列
    .add_yaxis("大二的学习效率", [20, 30, 50, 60, 70, 80],stack="stack1")  #
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    .set_global_opts(
        xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
        title_opts=opts.TitleOpts(title="信息工程学院学习知识所占百分比")
    )
    .render("bar_stack0.html")
)

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张謹礧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值