【python】盒图的制作

盒图效果图

在这里插入图片描述
这是使用python制作的盒图,在同一个坐标轴中展现10个盒图。盒图能够很好地显示数据的离散的分布情况。除了图片展示,python还能够计算出每个盒图的相关数据,比如目标数据的平均值、最大值、最小值等,例如(以上盒图对应的部分数据):

          index1      index2      index3     
count  842.000000  842.000000  842.000000    
mean     9.284371    9.044644    8.989394   
std      0.240151    0.261572    0.267525   
min      7.880000    7.800000    7.300000   
25%      9.162500    8.900000    8.840000   
50%      9.320000    9.070000    9.020000    
75%      9.440000    9.217500    9.160000       
max      9.800000    9.760000    9.730000    

代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import xlrd

#保存数据,可用于之后的学习研究
def save_data(data, path):
    Note=open(path,mode='w')
    print("保存数据")
    Note.write(str(data))
    Note.close()

#读取xls文件数据
def read_excel(excel_name,sheet_name):
    """参数:
    输入:excel的名字
    输出:目标表的名字"""
    workbook = xlrd.open_workbook(excel_name)  #打开文件
    sheet = workbook.sheet_by_name(sheet_name)  #读取sheet页
    # 获取表的行列数
    rows = sheet.nrows
    cols = sheet.ncols
    all_data = []
    tempList = []
    # 读取放置在excel中的数据
    for col in range(3, 13):
        for row in range(1, rows):
            print(rows)
            tempList.append(sheet.cell(row, col).value)
        all_data.append(tempList)
        tempList = []
    return all_data

#设置盒图的图片参数
def draw_box(all_data):
    for i in range(1):
        db = np.array(all_data)  # 把数据放置到numpy中的数组中
        print(db)
        fig = plt.figure(figsize=(40, 15))  # 设置画布大小
        ax = fig.add_subplot(111)  # 图形在画布中的布局
        allg = ["index1", "index2", "index3", "index4", "index5", "index6", "index7", "index8", "index9","index10"]  # 设置横坐标
        df = pd.DataFrame(db.T, columns=allg)  # db.T表示转置
        ax.set_title("Box-and-Whisker Plots", fontsize=24)  # 以下表示设置坐标标签以及字体大小
        ax.set_xlabel('index', fontsize=22)
        ax.set_ylabel('grade', fontsize=22)
        df.boxplot(ax=ax, fontsize=24)
        plt.savefig("盒图4.jpg")  # 保存
        plt.show()
        pd.set_option('display.max_columns', None)  # 为了将数据全部展示,显示全部列
        data = df.describe()  # 计算相关指标
        print(data)
        save_data(data, "数据.txt")  # 用于存储各组数据的指标数据


if __name__ == '__main__':
    all_data = read_excel("参数1", "参数2")#读取数据,参数1是excel的名字,参数2是里面具体的表名
    draw_box(all_data)#绘制图表

使用方法

数据

本代码使用的数据是以列为单位,即每一列数据对应着一个盒图。
在读取表格数据时的read_excel()函数中的for循环中:

for col in range(3, 13):
        for row in range(1, rows):

(excel表格中的第一列的下标从0开始),大家可以根据自己的需要修改。

图表
allg = ["index1", "index2", "index3", "index4", "index5", "index6", "index7", "index8", "index9","index10"]  # 设置横坐标

allg设置了横坐标,可根据自己的实际数据修改

以下是本人的git地址,欢迎大家免费下载,交流学习:

https://github.com/HYHJessica/

制作 CarPlay 盒子,你需要准备以下材料: 1. Raspberry Pi(建议选择 Raspberry Pi 3B 或更高版本) 2. 一块 MicroSD 卡(建议容量不小于 16GB) 3. 一根 HDMI 线 4. 一台带有 HDMI 输入的显示器 5. 一份 CarPlay 的开发者账号(需要支付年费) 接下来,你需要按照以下步骤进行操作: 1. 下载并安装最新版本的 Raspbian 操作系统到 MicroSD 卡中。 2. 连接 Raspberry Pi 和显示器,并将 MicroSD 卡插入 Raspberry Pi 上。 3. 开机并登录到 Raspbian 操作系统中。 4. 在命令行中执行 `sudo raspi-config` 命令,进入 Raspberry Pi 配置界面,将 Raspberry Pi 的分辨率设置为与显示器匹配。 5. 在命令行中执行以下命令,安装必要的软件: ``` sudo apt-get update sudo apt-get upgrade sudo apt-get install libssl-dev libffi-dev python-dev python-pip sudo pip install flask pyopenssl ``` 6. 在 Apple 开发者网站上创建一个 CarPlay 的开发者账号,并创建一个 CarPlay 的项目。 7. 在项目中创建一个证书,并将证书下载到 Raspberry Pi 上。 8. 在项目中创建一个 ID,并将 ID 下载到 Raspberry Pi 上。 9. 下载并安装最新版本的 CarPlay 框架到 Raspberry Pi 上。 10. 在 Raspberry Pi 上编写一个 Python 脚本,启动一个 Flask 服务器,将 CarPlay 框架集成到 Flask 服务器中。 11. 在 Python 脚本中使用证书和 ID 连接到 CarPlay 服务器,并将 Raspberry Pi 注册为一个 CarPlay 设备。 12. 将 Raspberry Pi 连接到车载音响系统上,并启动 CarPlay。 以上是一个简单的制作 CarPlay 盒子的流程,需要一定的技术水平和耐心。如果你不熟悉其中的某些步骤,建议在互联网上查找相关的教程或请专业人士进行指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

虫本初阳

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

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

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

打赏作者

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

抵扣说明:

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

余额充值