您的位置:首页 > 教程 > python > Python+Pyecharts实现散点图的绘制

Python+Pyecharts实现散点图的绘制

2022-06-20 14:50:54 来源:易采站长站 作者:

Python+Pyecharts实现散点图的绘制

目录
第1关:Scatter:散点图(一)编程要求代码测试说明第2关:Scatter:散点图(二)编程要求代码测试说明第3关:Scatter:散点图(三)编程要求代码测试说明

ucj站长之家-易采站长站-Easck.Com

第1关:Scatter:散点图(一)

ucj站长之家-易采站长站-Easck.Com

ucj站长之家-易采站长站-Easck.Com

ucj站长之家-易采站长站-Easck.Com

编程要求

根据以上介绍,在右侧编辑器补充代码,绘制给定数据的散点图,要求:ucj站长之家-易采站长站-Easck.Com

    画布大小初始化为宽>X 轴数据设置为 x_data添加 Y 轴数据。系列名称设置为空,数据使用 y_data,标记的大小设置为20,不显示标签X 轴类型设置为数值轴,并显示分割线Y 轴类型设置为数值轴,并显示分割线以及坐标轴刻度不显示提示框

    ucj站长之家-易采站长站-Easck.Com

    ucj站长之家-易采站长站-Easck.Com

    ucj站长之家-易采站长站-Easck.Com

    代码

    from PreTest import *
    from pyecharts import options as opts
    from pyecharts.render import make_snapshot
    from snapshot_phantomjs import snapshot
     
    from pyecharts.charts import Scatter
     
     
    data = [
        [10.0, 8.04],
        [8.0, 6.95],
        [13.0, 7.58],
        [9.0, 8.81],
        [11.0, 8.33],
        [14.0, 9.96],
        [6.0, 7.24],
        [4.0, 4.26],
        [12.0, 10.84],
        [7.0, 4.82],
        [5.0, 5.68],
    ]
    data.sort(key=lambda x: x[0])
    x_data = [d[0] for d in data]
    y_data = [d[1] for d in data]
     
     
    def scatter_chart() -> Scatter:
        # ********* Begin *********#  
        scatter = (
            Scatter(init_opts=opts.InitOpts(width="1600px", height="1000px"))
            .add_xaxis(x_data)
            .add_yaxis("",
                y_data,
                symbol_size=20
                )
            .set_series_opts(
                label_opts=opts.LabelOpts(is_show=False)
                )
            .set_global_opts(
                tooltip_opts=opts.TooltipOpts(is_show=False),
                xaxis_opts=opts.AxisOpts(
                    type_="value",
                    splitline_opts=opts.SplitLineOpts(is_show=True)
                ),
                yaxis_opts=opts.AxisOpts(
                    type_="value",
                    splitline_opts=opts.SplitLineOpts(is_show=True),
                    axistick_opts=opts.AxisTickOpts(is_show=True)
                )
            )
        )
        # ********** End **********#
        return scatter
     
    make_snapshot(snapshot, scatter_chart().render("Result/render.html"), 'StudentAnswer/student_answer.png') # 输出图片
    make_snapshot(snapshot, scatter_base(x_data, y_data).render(), "StandardAnswer/task1/standard_answer_1.png")
    

    ucj站长之家-易采站长站-Easck.Com

    ucj站长之家-易采站长站-Easck.Com

    ucj站长之家-易采站长站-Easck.Com

    测试说明

    平台会运行你编写的代码进行绘图,并与预期图片进行比对。预期效果如下:ucj站长之家-易采站长站-Easck.Com

    ucj站长之家-易采站长站-Easck.Com

    ucj站长之家-易采站长站-Easck.Com

    第2关:Scatter:散点图(二)

    编程要求

    根据以上介绍,在右侧编辑器补充代码,利用给定数据绘制相应的散点图,要求:ucj站长之家-易采站长站-Easck.Com

      X>添加两组 Y 轴数据。第一组系列名称设置为“商家A”,数据使用data_y_1第二组系列名称设置为“商家B”,数据使用data_y_2将标题设置为“Scatter-VisualMap(Size)”视觉映射过渡类型选择“size”,最大值设为 150,最小值设置为 20

      代码

      from PreTest import *
      from pyecharts import options as opts
      from pyecharts.render import make_snapshot
      from snapshot_phantomjs import snapshot
       
      from pyecharts.charts import Scatter
       
      from pyecharts.faker import Faker
       
       
      data_x = Faker.choose()
       
      data_y_1 = Faker.values()
       
      data_y_2 = Faker.values()
       
       
      def scatter_chart() -> Scatter:
          # ********* Begin *********#  
          scatter = (
              Scatter()
              .add_xaxis(data_x)
              .add_yaxis("商家A",data_y_1)
              .add_yaxis("商家B",data_y_2)
              .set_global_opts(
                  title_opts=opts.TitleOpts(title="Scatter-VisualMap(Size)"),
                  visualmap_opts=opts.VisualMapOpts(is_show=True,type_='size',min_=20,max_=150)
              )
          )
       
          # ********** End **********#
          return scatter
       
      make_snapshot(snapshot, scatter_chart().render("Result/render.html"), "StudentAnswer/student_answer.png") # 输出图片
      make_snapshot(snapshot, scatter_visual(data_x, data_y_1, data_y_2).render(), "StandardAnswer/task2/standard_answer_2.png")
      

      测试说明

      平台会运行你编写的代码进行绘图,并与预期图片进行比对。预期效果如下:ucj站长之家-易采站长站-Easck.Com

      ucj站长之家-易采站长站-Easck.Com

      ucj站长之家-易采站长站-Easck.Com

      第3关:Scatter:散点图(三)

      编程要求

      根据以上介绍,在右侧编辑器补充代码,利用给定数据绘制相应的散点图,要求:ucj站长之家-易采站长站-Easck.Com

        X>Y 轴数据项使用data_y,系列名称设置为“商家A”,并用 JsCode 格式化标签(具体格式见文末)标题设置为“Scatter-多维度数据”用 JsCode 格式化提示框文本(详见文末)视觉映射类型设置为颜色,最大值设置为 150,最小值设置为 20,组件映射维度为 1

        代码

        from PreTest import *
        from pyecharts import options as opts
        from pyecharts.render import make_snapshot
        from snapshot_phantomjs import snapshot
         
        from pyecharts.charts import Scatter
        from pyecharts.faker import Faker
        from pyecharts.commons.utils import JsCode
         
        data_x = Faker.choose()
         
        data_y = [list(z) for z in zip(Faker.values(), Faker.choose())]
         
         
        def scatter_chart() -> Scatter:
            # ********* Begin *********#  
            scatter = (
                Scatter()
                .add_xaxis(data_x)
                .add_yaxis(
                    "商家A",
                    data_y,
                    label_opts=opts.LabelOpts(
                        formatter=JsCode("""function(params){return params.value[1] +' : '+ params.value[2];}""")
                    )
                )
                .set_global_opts(
                    title_opts=opts.TitleOpts(title="Scatter-多维度数据"),
                    visualmap_opts=opts.VisualMapOpts(is_show=True,type_='color',min_=20,max_=150,dimension=1),
                    tooltip_opts=opts.TooltipOpts(
                        formatter=JsCode("""function (params) {return params.name + ' : ' + params.value[2];}""")
                    )
                )
         
            )
         
            # ********** End **********#
            return scatter
         
        make_snapshot(snapshot, scatter_chart().render("Result/render.html"), 'StudentAnswer/student_answer.png') # 输出图片
        make_snapshot(snapshot, scatter_multi(data_x, data_y).render(), "StandardAnswer/task3/standard_answer_3.png")
        

        测试说明

        平台会运行你编写的代码进行绘图,并与预期图片进行比对。预期效果如下:ucj站长之家-易采站长站-Easck.Com

        ucj站长之家-易采站长站-Easck.Com

        以上就是Python+Pyecharts实现散点图的绘制的详细内容,更多关于Python Pyecharts散点图的资料请关注易采站长站其它相关文章!ucj站长之家-易采站长站-Easck.Com

        如有侵权,请联系QQ:279390809 电话:15144810328

相关文章