Python可视化概率统计和聚类学习分析生物指纹
🎯要点
- 🎯使用Jupyter Notebook执行Dash 应用,确定Dash输入输出,设计回调函数,Dash应用中包含函数。🎯使用Plotly绘图工具:配置图对象选项,将图转换为HTML、图像。使用数据集绘图,使用回调函数创建交互式图。🎯 使用Plotly express 图表,创建贫困数据集图表。
- 🎯使用条形图和下拉菜单交互式比较值,垂直和水平绘制条形图,链接条形图和下拉列表,显示多个条形图的不同方式(堆叠、分组、重叠和相对),使用构面将图表拆分为多个子图表 - 水平、垂直或环绕,下拉菜单的附加功能(允许多项选择、添加占位符文本等)。🎯使用散点图探索变量并使用滑块过滤子集。🎯使用 Markdown 探索地图并丰富仪表板,等值线地图,利用动画帧向绘图添加新图层,使用地图回调函数,创建 Markdown 组件,地图投影,用散点图绘图,Mapbox 地图,纳入交互式地图。🎯计算数据频率并构建交互式表格,创建直方图,修改直方图的 bin 和使用多个直方图来自定义直方图,向直方图添加交互性,创建 2D 直方图,创建数据表,控制表格的外观(单元格宽度、高度、文本显示等),将直方图和表格添加到应用程序。🎯创建交互式 K均值集群应用程序。🎯创建控制其他组件的组件,添加动态组件。🎯提取和解析URL,创建多页应用。
- 🎯创建交互式网络分析,机场交通交互式仪表板,动画散点图,自然语言处理可视化。🎯Python和Julia交互式调用接口。🎯统计可视化、推理和建模。🎯化学指纹相似度评分的概率分布。🎯绘制概率密度并进行分析。🎯时间序列分解绘图。🎯公共安全统计学可视化。🎯死亡率统计分析。🎯量化分子相似度。🎯网络情感仪表板。
🍇Plotly和Dash仪表板
Dash 是由plotly 创建的一个Python 框架,用于创建交互式Web 应用程序。 Dash 是在 Flask、Plotly.js 和 React.js 之上编写的。 使用 Dash,您无需学习 HTML、CSS 和 Javascript 来创建交互式仪表板,您只需要 Python。 Dash 是开源的,使用该框架构建的应用程序可以在 Web 浏览器上查看。
Dash 应用程序由 2 个构建块组成:
- 布局:布局描述了应用程序的外观和感觉,它定义了图形、下拉列表等元素以及这些元素的位置、大小、颜色等。 Dash 包含 Dash HTML 组件,我们可以使用 Python 创建 HTML 内容并设置其样式,例如标题、段落、图像等。 图形、下拉菜单、滑块等元素是使用 Dash Core 组件创建的。
- 回调:回调用于为仪表板应用程序带来交互性。例如,我们可以使用这些函数来定义单击按钮或下拉菜单时将发生的活动。
现在,让我们看看如何使用plotly Dash 创建基于Web 的布局。
import dash
import dash_html_components as html
import dash_core_components as dcc
import plotly.graph_objects as go
import plotly.express as px
我们正在使用 dash 包初始化我们的 dash 应用程序。 然后,读取 2018 年至 2019 年不同公司的股价数据,创建 stock_prices 函数,该函数返回股价的折线图。
app = dash.Dash()
df = px.data.stocks() def stock_prices():fig = go.Figure([go.Scatter(x = df['date'], y = df['GOH'],\line = dict(color = 'firebrick', width = 4), name = 'firm')])fig.update_layout(title = 'Prices over time',xaxis_title = 'Dates',yaxis_title = 'Prices')return fig app.layout = html.Div(id = 'parent', children = [html.H1(id = 'H1', children = 'Styling using html components', style = {'textAlign':'center',\'marginTop':40,'marginBottom':40}),dcc.Graph(id = 'line_plot', figure = stock_prices()) ])
在第 16 行,我们使用 html Div 组件设置布局,该组件是一种包装器,将在其中创建布局的元素(标题、图形)。 Div 组件包含 id(元素的唯一标识符)、style(用于设置宽度、高度、颜色等)和子元素(等于初始化布局元素的方括号)等参数。
在(html.Div 的)子组件内,我们使用 H1 函数在第 17 行创建 html H1 标题。 在函数内部,我们设置函数的唯一 id (id = ‘H1’)、children 属性,使用它设置标题的文本,将 style 属性设置为字典,在其中设置样式,例如居中对齐文本 ,将顶部和底部边距设置为 40 像素。 在第 21 行,我们使用 dash 核心组件 (dcc) 创建 graph ,在其中设置图形的 id 和figure 参数,该参数等于返回绘图图形对象的函数调用 (stock_pricest())。
为了查看我们的应用程序,我们需要像在 Flask 中一样运行我们的 Web 服务器。请记住,Dash 是构建在 Flask 之上的。
if __name__ == '__main__': app.run_server()
运行应用程序时,您将看到该应用程序正在 http://127.0.0.1:8050/ 上运行,这是您的本地服务器。复制此网址并将其粘贴到您的浏览器中,您将看到以下可视化内容。
现在,让我们看看如何创建连接下拉列表和股价折线图的回调。
使用 @app.callback() 初始化回调,后面跟着函数定义。在此函数中,我们定义更改下拉列表的值时会发生什么。
from dash.dependencies import Input, Output @app.callback(Output(component_id='line_plot', component_property= 'figure'),[Input(component_id='dropdown', component_property= 'value')])
def graph_update(dropdown_value):print(dropdown_value)fig = go.Figure([go.Scatter(x = df['date'], y = df['{}'.format(dropdown_value)],\line = dict(color = 'firebrick', width = 4))])fig.update_layout(title = 'Stock prices over time',xaxis_title = 'Dates',yaxis_title = 'Prices')return fig
输入函数的组件属性,即下拉列表的“值”,作为函数 graph_update 中的参数。 在函数内部,我们创建散点图并返回图形对象Fig,该对象使用回调的Output函数传递给dcc.Graph的figure属性。
我们在下面的代码中组合布局、下拉菜单和回调:
import dash
import dash_html_components as html
import plotly.graph_objects as go
import dash_core_components as dcc
import plotly.express as px
from dash.dependencies import Input, Outputapp = dash.Dash()df = px.data.stocks()app.layout = html.Div(id = 'parent', children = [html.H1(id = 'H1', children = 'Styling using html components', style = {'textAlign':'center',\'marginTop':40,'marginBottom':40}),dcc.Dropdown( id = 'dropdown',options = [{'label':'Google', 'value':'GOOG' },{'label': 'Apple', 'value':'AAPL'},{'label': 'Amazon', 'value':'AMZN'},],value = 'GOOG'),dcc.Graph(id = 'bar_plot')])@app.callback(Output(component_id='bar_plot', component_property= 'figure'),[Input(component_id='dropdown', component_property= 'value')])
def graph_update(dropdown_value):print(dropdown_value)fig = go.Figure([go.Scatter(x = df['date'], y = df['{}'.format(dropdown_value)],\line = dict(color = 'firebrick', width = 4))])fig.update_layout(title = 'Stock prices over time',xaxis_title = 'Dates',yaxis_title = 'Prices')return fig if __name__ == '__main__': app.run_server()
下图显示了下拉列表值的变化如何更新我们的股价折线图。
参阅一:计算思维
参阅二:亚图跨际
相关文章:
Python可视化概率统计和聚类学习分析生物指纹
🎯要点 🎯使用Jupyter Notebook执行Dash 应用,确定Dash输入输出,设计回调函数,Dash应用中包含函数。🎯使用Plotly绘图工具:配置图对象选项,将图转换为HTML、图像。使用数据集绘图…...
yolo v8 教程(不出5行代码让你学会)
Solving environment: failedPackagesNotFoundError: The following packages are not available from current channels:- python3.8https://github.com/ultralytics 下滑来到 先来介绍为什么写这篇博客, 一. 是我之前的yolov5的博客挺多人访问的,但是…...
MongoDB集合结构分析工具Variety
工具下载地址:GitHub - variety/variety: Variety: a MongoDB Schema Analyzer 对于Mongo这种结构松散的数据库来说,如果想探查某个集合的结构,通过其本身提供的功能很不方便,通过调研发现一个很轻便的工具--variety,…...
详解Qt中访问数据库
在Qt中访问数据库涉及到几个关键步骤,主要包括加载数据库驱动、建立数据库连接、执行SQL语句、读取结果等。下面将详细介绍这些步骤,并给出一个简单的示例,这里假设使用的是SQLite数据库。 记得首先在pro文件中添加QT sql 1. 加载数据库驱动…...
《QT实用小工具·三》偏3D风格的异型窗体
1、概述 源码放在文章末尾 可以在窗体中点击鼠标左键进行图片切换,项目提供了一些图片素材,整体风格偏向于3D类型,也可以根据需求自己放置不同的图片。 下面是demo演示: 项目部分代码如下所示: 头文件部分ÿ…...
如何优化TCP?TCP的可靠传输机制是什么?
在网络世界中,传输层协议扮演着至关重要的角色,特别是TCP协议,以其可靠的数据传输特性而广受青睐。然而,随着网络的发展和数据量的激增,传统的TCP协议在效率方面遭遇了挑战。小编将深入分析TCP的可靠性传输机制&#x…...
DFS(基础,回溯,剪枝,记忆化)搜索
DFS基础 DFS(深度优先搜索) 基于递归求解问题,而针对搜索的过程 对于问题的介入状态叫初始状态,要求的状态叫目标状态 这里的搜索就是对实时产生的状态进行分析检测,直到得到一个目标状态或符合要求的最佳状态为止。对于实时产生新的状态…...
基于Scala开发Spark ML的ALS推荐模型实战
推荐系统,广泛应用到电商,营销行业。本文通过Scala,开发Spark ML的ALS算法训练推荐模型,用于电影评分预测推荐。 算法简介 ALS算法是Spark ML中实现协同过滤的矩阵分解方法。 ALS,即交替最小二乘法(Alte…...
Go语言和Java编程语言的主要区别
目录 1.设计理念: 2.语法: 3.性能: 4.并发性: 5.内存管理: 6.标准库: 7.社区和支持: 8.应用领域: Go(也称为Golang)和Java是两种不同的编程语言&…...
【TypeScript系列】与其它构建工具整合
与其它构建工具整合 构建工具 BabelBrowserifyDuoGruntGulpJspmWebpackMSBuildNuGet Babel 安装 npm install babel/cli babel/core babel/preset-typescript --save-dev.babelrc {"presets": ["babel/preset-typescript"] }使用命令行工具 ./node_…...
Java | Leetcode Java题解之第12题整数转罗马数字
题解: 题解: class Solution {String[] thousands {"", "M", "MM", "MMM"};String[] hundreds {"", "C", "CC", "CCC", "CD", "D", "DC…...
哈佛大学商业评论 --- 第五篇:智能眼镜之战
AR将全面融入公司发展战略! AR将成为人类和机器之间的新接口! AR将成为人类的关键技术之一! 请将此文转发给您的老板! --- 专题作者:Michael E.Porter和James E.Heppelmann 虽然物理世界是三维的,但大多…...
paddlepaddle模型转换onnx指导文档
一、检查本机cuda版本 1、右键找到invdia控制面板 2、找到系统信息 3、点开“组件”选项卡, 可以看到cuda版本,我们这里是cuda11.7 cuda驱动版本为516.94 二、安装paddlepaddle环境 1、获取pip安装命令 ,我们到paddlepaddle官网ÿ…...
图像处理与视觉感知---期末复习重点(6)
文章目录 一、图像分割二、间断检测2.1 概述2.2 点检测2.3 线检测2.4 边缘检测 三、边缘连接3.1 概述3.2 Hough变换3.3 例子3.4 Hough变换的具体步骤3.5 Hough变换的法线表示形式3.6 Hough变换的扩展 四、阈值处理4.1 概述4.2 计算基本全局阈值算法4.3 自适应阈值 五、基于区域…...
git 如何删除本地和远程分支
删除本地分支 确认当前分支:首先,确保你没有在要删除的分支上。你可以通过运行git branch命令来查看当前的分支。 切换分支:如果你在要删除的分支上,需要先切换到另一个分支。例如,切换到main分支,可以使用…...
Kong基于QPS、IP限流
Rate Limiting限流插件 https://docs.konghq.com/hub/kong-inc/rate-limiting/ 它可以针对consumer ,credential ,ip ,service,path,header 等多种维度来进行限流.流量控制的精准度也有多种方式可以参考,比如可以做到秒级,分钟级,小时级等限流控制. 基于IP限流 源码地址&…...
基于springboot实现甘肃非物质文化网站系统项目【项目源码+论文说明】
摘要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本甘肃非物质文化网站就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信…...
【瑞萨RA6M3】1. 基于 vscode 搭建开发环境
基于 vscode 搭建开发环境 1. 准备2. 安装2.1. 安装瑞萨软件包2.2. 安装编译器2.3. 安装 cmake2.4. 安装 openocd2.5. 安装 ninja2.6. 安装 make 3. 生成初始代码4. 修改 cmake 脚本5. 调试准备6. 仿真 1. 准备 需要瑞萨仓库中的两个软件: MDK_Device_Packs.zipse…...
使用pip install替代conda install将packet下载到anaconda虚拟环境
问题描述 使用conda install 下载 stable_baseline3出现问题 一番搜索下是Anaconda.org缺少源 解决方法 首先使用管理员权限打开 anaconda prompt 然后激活目标环境:conda activate env_name 接着使用:conda env list查看目标env的位置 如D:\anacon…...
【HTML】常用CSS属性
文章目录 前言1、字体和文本属性2、边距和填充3、border边框4、列表属性 前言 上一篇我们学习了CSS扩展选择器以及它的继承性,对于页面元素样式设置相信大家都不陌生了。 这一篇我们就来看看具体都有哪些样式可以设置?又该如何设置? 喜欢的【…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...
TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案
一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...
AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
