15%

1.acconda 用来做数据分析

1.读取excle 做一个曲线

2.spyder.exe 启动需要1分钟

3. 打开anaconda prompt ,安装第三方包


##202020 1205

1.anaconda navigate 是一个入口,通过这个入口才可以进入spyder

2.python 的注释符 是 “"",

3.感谢贺满 图表展示
https://www.cnblogs.com/puresoul/p/7520246.html


###
1.感谢qq_36800405

pip --default-timeout=100 install pyecharts

pip --default-timeout=100 install linspace


2.感谢
http://www.10qianwan.com/articledetail/433132.html
萬仟网IT编程


#第二行数据
row2 = sheet1.row_values(1)
#第二列数据
cols2 = sheet1.col_values(2)

from pyecharts.charts import Bar

########sample 1214

"""

 

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 为直方图   

    .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")

)