zoukankan      html  css  js  c++  java
  • python

    转:

    问题1 如下下载离线安装包

    pip download --only-binary=:all: --python-version 37 -d D:offline_packages12 pyechats

     

    总结:

    下载这个包目的是因为某些实验环境根本连不上网

    如果可以下载到本地,那么至少可以迁移这些包到本地

    这样本地可以重新搭建环境

    问题2 如何读取指定行和指定列的值

    # -*- coding: utf-8 -*-

    """

    Spyder Editor

    This is a temporary script file.

    """

    # coding:utf-8

    #导入读取excel的库

    #import xlrd

    #导入需要读取excel表格的路径

    #data = xlrd.open_workbook(r'c:\users\user\desktop\20201119.xlsx')

    import numpy as np

    import xlrd

    data = xlrd.open_workbook(r'c:\users\user\desktop\20201119.xlsx')

    table = data.sheets()[0]

    print(table)

    nrows = table.nrows #行数

    #ncols = table.ncols #列数

    ##跳步函数

    c1=range(0,nrows,1)

    print(c1)

      

    start=12 #开始的行

    end=16 #结束的行

      

    rows=end-start

      

    #  列表数组存行数组数据

    list_values=[]

    ##存放表名

    for x in range(start,end):

      values=[]

      row =table.row_values(x)

      ##value 存放列数组

      for i in range(1,4):

        # print(value)

        values.append(row[i])

      list_values.append(values)

    # print(list_values)

    datamatrix=np.array(list_values)

    print(datamatrix)

     总结:

     ##目的是为了将excel 数据读到程序库

    ###读出来后,就可以显示对应的数据处理方式。

    ###一般对数据处理是为了显示 这项数据 在一个周期内的波动

    ###x 轴对应日期。Y轴对应相关的数值

    问题3:小数点位的纵坐标如何显示

    感谢书生_Scholar

    http://cncc.bingj.com/cache.aspx?q=from+pyecharts.charts++import+Bar&d=5024940062146568&mkt=zh-CN&setlang=zh-CN&w=LKuec-wxGD_tFAPVrsp3yB5JixgU6ggz

    感谢sunhailin-Leo

    http://cncc.bingj.com/cache.aspx?q=+import+JsCode&d=4977016816470297&mkt=zh-CN&setlang=zh-CN&w=wYcUtf8BXyPXSVtX8SGQ_rynidjcyIIp

    感谢Shaw_tingshu

    https://blog.csdn.net/qq_41595507/article/details/102947622

     

    # -*- coding: utf-8 -*-

    """

    Created on Mon Dec 14 17:12:24 2020

     

    @author: user1

    """

     

    from pyecharts import options as opts

    from pyecharts.charts import Bar

    ##JsCode 简单来说就是一段 Javascript 的代码,其作用是为对应能够使用 JsCode 的参数在 Echarts 渲染是提供的回调函数。

    from pyecharts.commons.utils import JsCode

    ##pyecharts.globalsThemeType所有主题风格并进行详细的解释。

    from pyecharts.globals import ThemeType

     

    ###a项目的值 和所占总数的百分比

    list2 = [

        {"value": 12, "percent": 12 / (12 + 3)},

        {"value": 23, "percent": 23 / (23 + 21)},

        {"value": 33, "percent": 33 / (33 + 5)},

        {"value": 3, "percent": 3 / (3 + 52)},

        {"value": 33, "percent": 33 / (33 + 43)},

    ]

     

    ###b项目的值 和所占总数的百分比

    ##单独显示百分比,没有意义,需要当时的值和百分比,结合起来看看,才有意义。 

    list3 = [

        {"value": 3, "percent": 3 / (12 + 3)},

        {"value": 21, "percent": 21 / (23 + 21)},

        {"value": 5, "percent": 5 / (33 + 5)},

        {"value": 52, "percent": 52 / (3 + 52)},

        {"value": 43, "percent": 43 / (33 + 43)},

    ]

     

    print(list3)

     

    ##

    c = (

    ##ThemeType=LIGHT = 'light' #明亮风格

         Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))

        .add_xaxis([1, 2, 3, 4, 5])

    ##y轴坐标

    ##格式为:.add_yaxis(具体参数),具体参数中,stack参数设置一个字符串。多个.add_yaxis()时,stack的值为一样的y值就会叠加在一起。

    ###代码示例如下:两个.add_yaxis()的stack值都为“stack1”,所以就堆叠在一起了。

    ###category_gap 为直方图   

    ##在y轴上,加入了当前的值和当前的值所占的百分比

        .add_yaxis("product1", list2, stack="stack1", category_gap="50%")

        .add_yaxis("product2", list3, stack="stack2", category_gap="50%")

    ##可以通过系列配置(.set_series_opts())控制图表中的文本,线样式,标记等,使用示例如下:

    ##

    ## 根据上图可以看到我们的在数据中设置的 value percent 都被保留了下来,因此我们只需要让我们的匿名函数把 return 的结果访问到 percent 处即可。在 Javascript 中,Object 对象的属性都可以通过 . 操作符进行方法, 因此访问我们设置的 percent 字段的 js 就可以写成 x.data.percent 了;此时,我们得到的结果是我们预设 percent 的值 0.8 (直接传入 字符串 80% 也是可以的),因此我们需要转化一下。

    ##将小数转化为百分比数据,首先需要 * 100, 然后通过精度保留函数取整。最后关键的函数变成了 Number(x.data.percent * 100).toFixed(); toFixed() 函数默认为 0,最大位数为 20 位;最后再拼上百分号即可。

        .set_series_opts(

            label_opts=opts.LabelOpts(

                position="right",

                formatter=JsCode(

                    "function(x){return Number(x.data.percent * 100).toFixed() + '%';}"

                ),

            )

        )

        .render("stack_bar_percent.html")

    )

    总结:

    ##在这个案例里,获取到当前的销量的值和销量的百分比

    ##因为销量的百分比是有小数点,展示起来不好看,通过引入第三方插件jscode,将其凭凑成百分比

    ##当我们注意到同时显示销量和销售的百分比的时候,第一个销量只有点击图标才能展示。

    ##而销量百分比却可以直接在图表中显示出来。

  • 相关阅读:
    Java NIO系列教程(十二) Java NIO与IO
    Java NIO系列教程(十一) Pipe
    Java NIO系列教程(十) Java NIO DatagramChannel
    Java NIO系列教程(九) ServerSocketChannel
    C#使用cmd运行命令并返回控制台输出信息
    分割nginx日志
    redis启动警告解决
    git worktree 目录修复
    git worktree 稀疏检出(sparseCheckout)
    python json dumps datetime类型报错
  • 原文地址:https://www.cnblogs.com/feiyun8616/p/14205468.html
Copyright © 2011-2022 走看看