Python条形图热图直方图可视化精神健康状态(医学数据集)

目标是比开源精神疾病提供的基本报告更深入地挖掘,并了解更多属性之间的相互作用,这可以为所描述的决策者提供信息。

考虑的问题点:

  1. 不同性别属性的员工心理健康是否存在显着差异?
  2. 不同年龄属性的员工心理健康是否存在显着差异?
  3. 提供更多支持的公司是否会让员工心理更健康?
  4. 个人对心理健康的态度是否会影响他们的心理健康和寻求治疗?

数据可视化工具

条形图

条形图或条形图是用矩形条表示数据类别的图形,矩形条的长度和高度与其所表示的值成正比。 条形图可以水平或垂直绘制。 条形图描述了离散类别之间的比较。 该图的一个轴代表正在比较的特定类别,而另一个轴代表与这些类别相对应的测量值。

Python 中的 matplotlib API 提供了 bar() 函数,该函数可用于 MATLAB 风格或作为面向对象的 API。与轴一起使用的 bar() 函数的语法如下:

该函数根据给定的参数创建一个以矩形为边界的条形图。下面是一个简单的条形图示例,它代表一个学院不同课程的学生人数。

import numpy as np
import matplotlib.pyplot as plt # creating the dataset
data = {'C':20, 'C++':15, 'Java':30, 'Python':35}
courses = list(data.keys())
values = list(data.values())fig = plt.figure(figsize = (10, 5))# creating the bar plot
plt.bar(courses, values, color ='maroon', width = 0.4)plt.xlabel("Courses offered")
plt.ylabel("No. of students enrolled")
plt.title("Students enrolled in different courses")
plt.show()

这里plt.bar(courses, value, color=’maroon’)用于指定以courses列为X轴,values为Y轴来绘制条形图。 color 属性用于设置条形的颜色(本例中为栗色)。 plt.xlabel(“提供的课程”) 和 plt.ylabel(“学生已注册”) 用于标记相应的轴。 plt.title( ) 用于为 graph.plt.show() 创建标题,用于使用前面的命令将图形显示为输出。

自定义条形图

import pandas as pd
from matplotlib import pyplot as pltdata = pd.read_csv(r"cars.csv")
data.head()
df = pd.DataFrame(data)name = df['car'].head(12)
price = df['price'].head(12)fig = plt.figure(figsize =(10, 7))plt.bar(name[0:10], price[0:10])plt.show()

从上面的条形图中可以看出,X 轴刻度相互重叠,因此无法正确看到。这样通过旋转X轴刻度,就可以清晰可见。这就是为什么需要定制条形图。

import pandas as pd
from matplotlib import pyplot as pltdata = pd.read_csv(r"cars.csv")
data.head()
df = pd.DataFrame(data)name = df['car'].head(12)
price = df['price'].head(12)fig, ax = plt.subplots(figsize =(16, 9))ax.barh(name, price)for s in ['top', 'bottom', 'left', 'right']:ax.spines[s].set_visible(False)ax.xaxis.set_ticks_position('none')
ax.yaxis.set_ticks_position('none')ax.xaxis.set_tick_params(pad = 5)
ax.yaxis.set_tick_params(pad = 10)ax.grid(b = True, color ='grey',linestyle ='-.', linewidth = 0.5,alpha = 0.2)ax.invert_yaxis()for i in ax.patches:plt.text(i.get_width()+0.2, i.get_y()+0.5, str(round((i.get_width()), 2)),fontsize = 10, fontweight ='bold',color ='grey')ax.set_title('Sports car and their price in crore',loc ='left', )fig.text(0.9, 0.15, 'Jeeteshgavande30', fontsize = 12,color ='grey', ha ='right', va ='bottom',alpha = 0.7)plt.show()
多个条形图

当一个变量发生变化时要对数据集进行比较时,可以使用多个条形图。 我们可以轻松地将其转换为堆叠面积条形图,其中每个子组都显示在其他子组之上。 可以通过改变条形的厚度和位置来绘制它。 下面的条形图显示了工程分支通过的学生人数:

import numpy as np 
import matplotlib.pyplot as plt barWidth = 0.25
fig = plt.subplots(figsize =(12, 8)) IT = [12, 30, 1, 8, 22] 
ECE = [28, 6, 16, 5, 10] 
CSE = [29, 3, 24, 25, 17] br1 = np.arange(len(IT)) 
br2 = [x + barWidth for x in br1] 
br3 = [x + barWidth for x in br2] plt.bar(br1, IT, color ='r', width = barWidth, edgecolor ='grey', label ='IT') 
plt.bar(br2, ECE, color ='g', width = barWidth, edgecolor ='grey', label ='ECE') 
plt.bar(br3, CSE, color ='b', width = barWidth, edgecolor ='grey', label ='CSE') plt.xlabel('Branch', fontweight ='bold', fontsize = 15) 
plt.ylabel('Students passed', fontweight ='bold', fontsize = 15) 
plt.xticks([r + barWidth for r in range(len(IT))], ['2015', '2016', '2017', '2018', '2019'])plt.legend()
plt.show() 

堆叠条形图

堆叠条形图代表不同的组彼此重叠。 条形的高度取决于各组结果组合的高度。 它是从底部到值,而不是从零到值。 下面的条形图代表了团队中男孩和女孩的贡献。

import numpy as np
import matplotlib.pyplot as pltN = 5boys = (20, 35, 30, 35, 27)
girls = (25, 32, 34, 20, 25)
boyStd = (2, 3, 4, 1, 2)
girlStd = (3, 5, 2, 3, 3)
ind = np.arange(N) 
width = 0.35fig = plt.subplots(figsize =(10, 7))
p1 = plt.bar(ind, boys, width, yerr = boyStd)
p2 = plt.bar(ind, girls, width,bottom = boys, yerr = girlStd)plt.ylabel('Contribution')
plt.title('Contribution by the teams')
plt.xticks(ind, ('T1', 'T2', 'T3', 'T4', 'T5'))
plt.yticks(np.arange(0, 81, 10))
plt.legend((p1[0], p2[0]), ('boys', 'girls'))plt.show()

热图

直方图

医学数据集清理

医学数据集分析

参阅一:亚图跨际
参阅二:亚图跨际

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/602248.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go语言程序设计-第7章--接口

Go语言程序设计-第7章–接口 接口类型是对其他类型行为的概括与抽象。 Go 语言的接口的独特之处在于它是隐式实现。对于一个具体的类型,无须声明它实现了哪些接口,只要提供接口所必须实现的方法即可。 7.1 接口即约定 7.2 接口类型 package iotype …

计算机组成原理-进位计数制(进制表示 进制转换 真值和机器树)

文章目录 现代计算机的结构总览最古老的计数方法十进制计数法推广&#xff1a;r进制计数法任意进制->十进制二进制<--->八进制&#xff0c;十六进制 各种进制常见的书写方式十进制->任意进制整数部分小数部分 十进制->二进制&#xff08;拼凑法&#xff09;真值…

Oracle OCP怎么样线上考试呢

大家好&#xff01;今天咱们就来聊聊Oracle OCP这个让人又爱又恨的认证。为啥说又爱又恨呢&#xff1f;因为它既是IT界的“金字招牌”&#xff0c;又是一块硬骨头&#xff0c;不是那么容易啃下来的。好了&#xff0c;废话不多说&#xff0c;我们直奔主题&#xff0c;来看看关于…

解决vue3中watch 监听不到旧值的问题,亲测有效!

问题描述 这个问题是我在公司vue3项目的时候发现的一个问题&#xff0c;watch 在监听对象/数组变量的变化时&#xff0c;发现对象的数据变化时 旧数据 获取到的和新数据是一样的 类似于下面这样 const objref({a:我是原来的值,b:6, })obj.a改变值watch(obj,(nel,old)>{ c…

studio3T mongodb 根据查询条件更新字段 或 删除数据

1. mongodb 等于、不等于$ne、不包含 $nin 以及批量更新数据的使用。 业务场景&#xff1a; 在集合中&#xff0c;根据查询条件&#xff0c;更新数据状态。 实现代码&#xff1a; 1. 部门名称为XXX、状态不等于“完好”的、并且不包含这些编码的数据先查询出来2. 再把状态更…

rust sqlx包(数据库相关)使用方法+问题解决

可以操作pgsql、mysql、mssql、sqlite 异步的&#xff0c;性能应该不错&#xff0c;具体使用有几个坑 除了sqlx库&#xff0c;还有对于具体数据库的库&#xff0c;比如postgres库 演示以pgsql为例&#xff0c;更新时间2024.1.6 官方github: sqlx github rust官方文档&#xff1…

【Python学习】Python学习4-运算符

目录 【Python学习】Python学习4-运算符 前言算术运算符比较&#xff08;关系&#xff09;运算符赋值运算符逻辑运算符位运算符成员运算符身份运算符运算符优先级参考 文章所属专区 Python学习 前言 本章节主要说明Python的运算符。主要有 算术运算符 比较&#xff08;关系&…

强化学习3——马尔可夫性质、马尔科夫决策、状态转移矩阵和回报与策略(上)

与多臂老虎机问题不同&#xff0c;马尔可夫决策过程包含状态信息以及状态之间的转移机制。如果要用强化学习去解决一个实际问题&#xff0c;第一步要做的事情就是把这个实际问题抽象为一个马尔可夫决策过程。 马尔可夫决策过程描述 马尔可夫决策过程以智能体在与环境交互的过…

【linux笔记1】

目录 【linux笔记1】文件内容的理解用户管理用户管理命令添加用户切换用户修改用户信息删除用户 用户组 【linux笔记1】 文件内容的理解 etc文件夹&#xff1a;etc是拉丁语"et cetera"的缩写&#xff0c;意思是“和其他的”或“等等”。在linux系统中&#xff0c;“…

[嵌入式C][入门篇] 快速掌握基础2 (数据类型、常量、变量)

开发环境&#xff1a; 网页版&#xff1a;跳转本地开发(Vscode)&#xff1a;跳转 文章目录 一、基本变量大小和范围&#xff08;1&#xff09;在8位/32位单⽚机中&#xff1a;测试代码结果&#xff1a;64位机器结果&#xff1a;32位机器&#xff08;单片机&#xff09;无对齐限…

[NAND Flash 5.3] QLC NAND 已来未热,是时候该拥抱了?

依公知及经验整理,原创保护,禁止转载。 专栏 《深入理解NAND Flash》 <<<< 返回总目录 <<<< 全文 3600 字。 前言 伴随着闪存芯片的发展趋势,现如今便宜、大容量的SSD基本上都需要上QLC闪存芯片了。一时间QLC有山雨欲来之势,大容量QLC SSD的普及…

Geoserver扩展发布MySQL视图功能

Geoserver中并不自带mysql数据发布功能&#xff0c;需要扩展外部插件。 1、示例以geoserver-2.20.5版本进行演示&#xff0c;所以MySQL插件需要到该版本对应的“Extensions”标题下查找&#xff0c;下载地址&#xff1a;GeoServer&#xff0c;详见下图 2、选择MySQL进入下载页…

Linux第11步_解决“挂载后的U盘出现中文乱码”

学习完“通过终端挂载和卸载U盘”&#xff0c;我们发现U盘下的中文文件名会出现乱码&#xff0c;现在讲解怎么解决这个问题。其实就是复习一下“通过终端挂载和卸载U盘”&#xff0c;单独讲解&#xff0c;是为了解决问题&#xff0c;一次性搞好&#xff0c;我们会不长记性。 在…

【100条mysql常用命令】

当然&#xff0c;这里是一些常用的 MySQL 命令列表&#xff0c;用于管理数据库和执行各种查询操作&#xff1a; SHOW DATABASES; - 显示所有数据库CREATE DATABASE database_name; - 创建新数据库USE database_name; - 选择要操作的数据库DROP DATABASE database_name; - 删除…

数据在内存中的存储之大小端

今天也是努力学编程&#xff0c;敲代码的一天&#xff01; 1.什么是大小端 其实超过一个字节的数据在内存中存储的时候&#xff0c;就有存储顺序的问题&#xff0c;按照不同的存储顺序&#xff0c;我们分为大端字节序 存储和小端字节序存储&#xff0c;下面是具体的概念: &…

HIL(硬件在环)技术汇总梳理

HIL&#xff08;Hardware-in-the-Loop&#xff09;测试领域的知名公司有dSPACE、NI、Vector和speedgoat等&#xff0c;以下是针对这几家HIL技术的对比分析&#xff1a; 文章目录 dSPACE NI Vector speedgoat 总结 dSPACE dSPACE成立于1988年&#xff0c;起源自德国的帕德…

vue3项目中axios的常见用法和封装拦截(详细解释)

1、axios的简单介绍 Axios是一个基于Promise的HTTP客户端库&#xff0c;用于浏览器和Node.js环境中发送HTTP请求。它提供了一种简单、易用且功能丰富的方式来与后端服务器进行通信。能够发送常见的HTTP请求&#xff0c;并获得服务端返回的数据。 此外&#xff0c;Axios还提供…

C++学习笔记(二十二):c++ 隐式转换与explicit关键字

c允许编译器对代码执行一次隐式转换。 #include<iostream> #include<string>class Entity { public:std::string name;int age;Entity(int x) {age x;}Entity(std::string x){name x;} }; void PrintEntity(Entity e) {std::cout << e.age << "…

buuctf 逆向 number_game

这是一题二叉树逆向 正常递归建立树的代码为&#xff1a; VOID BinaryTree::BuildTree(Tree*& root) {cout << "输入-1即结束" << endl;INT Val 0;cin >> Val;if (Val -1)return;root new Tree(Val);cout << "请输入" &l…

FSMC—扩展外部SRAM

一、SRAM控制原理 STM32控制器芯片内部有一定大小的SRAM及FLASH作为内存和程序存储空间&#xff0c;但当程序较大&#xff0c;内存和程序空间不足时&#xff0c;就需要在STM32芯片的外部扩展存储器了。STM32F103ZE系列芯片可以扩展外部SRAM用作内存。 给STM32芯片扩展内存与给…