当前位置: 首页 > news >正文

数据可视化(1)

使用python带的matplotlib库进行简单的绘图。使用之前先进行安装,pip  install  matplotlib。如果安装了Anaconda,则无需安装matplotlib。

1.简单折线图

#绘制简单图表
import matplotlib.pyplot as plt
plt.plot([1,2,3,4,5])
plt.show()
import matplotlib.pyplot as plt
#散点图
plt.plot([1,2,3,4,5],[2,5,6,2,3],'ro') #x轴数据为[1,2,3,4,5],y轴数据为[2,5,6,2,3]
plt.show()
import pandas as pd
#绘制简单折线图
df=pd.read_excel('abc.xlsx')
df.head()
x=df['日期']
y=df['温度']
plt.plot(x,y)
plt.show()

#plt.plot(x,y,format_string,**kwargs)
#x,x轴
#y,y轴
#format_string:控制曲线格式的字符串,包括颜色,线条样式和标记样式
#**kwargs:键值参数,相当于一个字典
x=[1,2,3,4,5]
y=[10,20,30,40,50]
plt.plot(x,y,color='#ff0000')
#plt.plot(x,y,color='g',linestyle='-.')#设置线条样式  -.点线  --双划线  :虚线 -实线
#plt.plot(x,y,color='0.5')
plt.show()

2.散点图

#散点图
x=[1,2,3,4,5]
y=[2,6,5,3,9]
plt.plot(x,y,'ro')#r代表红色,o代表是圆形
plt.show()
#图布的设置
x=[1,2,5,6,3]
y=[6,2,5,3,4]
plt.figure(facecolor='yellow',figsize=(5,3))
#facecolor设置画布颜色,figsize设置画布大小,为500*300
plt.plot(x,y,marker='o',color='r',mfc='w')
#添加标记样式,marker,o是圆形,mfc变为空心圆
plt.show()

3.设置坐标轴和网格线

#设置坐标轴
x=[1,2,5,6,3]
y=[6,2,5,3,4]
#处理中文
plt.rcParams['font.sans-serif']=['SimHei']
#设置x轴标题
plt.xlabel('2021年五一')
plt.ylabel('温度')
plt.figure(figsize=(5,3))
#facecolor设置画布颜色,figsize设置画布大小,为500*300
plt.plot(x,y,marker='o',color='r',mfc='w')
#添加标记样式,marker,o是圆形,mfc变为空心圆
plt.show()#设置坐标轴刻度
x=[i for i in range(1,11)]
y=[random.randint(1,10) for _ in range(10)]
plt.plot(x,y,marker='o',mfc='w')
plt.xticks(range(1,11))#设置x轴的刻度
plt.yticks(range(1,11))
plt.xlim(1,20)#设置坐标轴的范围
plt.grid(color='0.5',linestyle='--',linewidth='1')#设置网格线
plt.grid(color='0.5',linestyle='--',linewidth='1',axis='x')#设置网格线,隐藏x轴网格线
plt.show()

4.设置文本标签

# 添加文本标签
x = [i for i in range(1, 11)]
y = [random.randint(1, 10) for _ in range(10)]
plt.plot(x, y, marker='o', mfc='w')plt.xticks(range(1, 11))  # 设置x轴的刻度
plt.yticks(range(1, 11))
# 添加文本标签
for a, b in zip(x, y):plt.text(a, b, b, ha='center', va='center',fontsize=15,color='r')  # ha垂直对齐,va垂直对齐
#添加图标的标题
plt.title('测试练习折线图',fontsize='18')
#添加图例
plt.legend(('销售次数'))
plt.show()

5.添加文本注释

# 添加文本注释
x=[1,2,3,4,5]
y=[4,5,2,3,6]
plt.plot(x,y,marker='o')
for a,b in zip(x,y):plt.text(a,b,b,ha='center',va='bottom',fontsize=12,color='r')#添加文本注释
plt.annotate('最大数',xy=(5,6),xytext=(5,6),arrowprops=dict(facecolor='r',shrink=0.5))
#shrink 线条两端收缩比例
plt.show()

6.设置画布距离

# 图表与画布之间的距离
x=[1,2,3,4,5]
y=[4,5,2,3,6]
#解决乱码问题
plt.rcParams['font.sans-serif']=['SimHei']
plt.plot(x,y,marker='o')
for a,b in zip(x,y):plt.text(a,b,b,ha='center',va='bottom',fontsize=12,color='r')#添加文本注释
plt.annotate('最大数',xy=(5,6),xytext=(5,6),arrowprops=dict(facecolor='r',shrink=0.5))
#shrink 线条两端收缩比例#设置间距
#subplots_adjust(left,right,top,bottom)
#left,bottom值越大,边距越大,right,top值越小,边距越大。
#取值在0-1之间,左边的值小于右边的值。
plt.subplots_adjust(left=0.2,right=0.9,top=0.9,bottom=0.2)
#设置坐标轴的刻度线
plt.tick_params(bottom=False,left=True,right=True,top=True)
#设置坐标轴刻度线显示方向
plt.rcParams['xtick.direction']='in'
plt.rcParams['ytick.direction']='out'
plt.show()

7.折线图

#折线图
df=pd.read_excel('成绩表.xlsx')
x=df['姓名']
y1=df['数学']
y2=df['语文']
y3=df['英语']
#中文乱码
plt.rcParams['font.sans-serif']=['SimHei']
plt.plot(x,y1,label="数学",color='r',marker='o')
plt.plot(x,y2,label="语文",color='g',marker='p',linestyle='--')
plt.plot(x,y3,label="英语",color='b',marker='<',linestyle=':')
#设置画布大小
plt.figure(figsize=(10,6))
#设置网格线
plt.grid(axis="y")#关闭y轴网格线
#设置坐标轴标题
plt.xlabel("姓名")
plt.ylabel("分数")
#设置图标的图例
plt.legend(['数学','语文','英语'])
#设置坐标轴刻度
plt.yticks(range(50,150,10))
plt.show()

 

相关文章:

数据可视化(1)

使用python带的matplotlib库进行简单的绘图。使用之前先进行安装&#xff0c;pip install matplotlib。如果安装了Anaconda,则无需安装matplotlib。 1.简单折线图 #绘制简单图表 import matplotlib.pyplot as plt plt.plot([1,2,3,4,5]) plt.show() import matplotlib.pyp…...

Llama 2: Open Foundation and Fine-Tuned Chat Models

文章目录 TL;DRIntroduction背景本文方案 实现方式预训练预训练数据训练细节训练硬件支持预训练碳足迹 微调SFTSFT 训练细节 RLHF人类偏好数据收集奖励模型迭代式微调&#xff08;RLHF&#xff09;拒绝采样&#xff08;Rejection Sampling&#xff09;PPO多轮一致性的系统消息&…...

BTY-DNS AMA回顾:致力于创建Web3领域中的去中心化身份(DID)

传统域名系统 (DNS) 是一个分层的分散信息存储&#xff0c;用于将用户在网络浏览器中输入可读名称&#xff08;例如www.baidu.com&#xff09;解析为IP地址&#xff0c;来访问互联网上的计算机。传统域名系统存在一些例如过于集中化管理、效率并不高等局限性问题。而去中心化域…...

【设计模式——学习笔记】23种设计模式——装饰器模式Decorator(原理讲解+应用场景介绍+案例介绍+Java代码实现)

生活案例 咖啡厅 咖啡定制案例 在咖啡厅中&#xff0c;有多种不同类型的咖啡&#xff0c;客户在预定了咖啡之后&#xff0c;还可以选择添加不同的调料来调整咖啡的口味&#xff0c;当客户点了咖啡添加了不同的调料&#xff0c;咖啡的价格需要做出相应的改变。 要求&#xff…...

《golang设计模式》第一部分·创建型模式-01-单例模式(Singleton)

文章目录 1. 概述1.1 目的1.2 实现方式 2. 代码示例2.1 设计2.2 代码 1. 概述 1.1 目的 保证类只有一个实例有方法能让外部访问到该实例 1.2 实现方式 懒汉式 在第一次调用单例对象时创建该对象&#xff0c;这样可以避免不必要的资源浪费 饿汉式 在程序启动时就创建单例对象…...

若依微服务整合activiti7.1.0.M6

若依微服务3.6.3版本整合activiti7&#xff08;7.1.0.M6&#xff09; 目前有两种办法集成activiti7 放弃activiti7新版本封装的API&#xff0c;使用老版本的API&#xff0c;这种方式只需要直接集成即可&#xff0c;在7.1.0.M6版本中甚至不需要去除security的依赖。不多介绍&a…...

Ubuntu 下安装软件,卸载,查看已经安装的软件

参考网址&#xff1a;http://wiki.ubuntu.org.cn/UbuntuSkills 一般的安装程序用三种&#xff1a; .deb 和.rpm 这两种安装文件 .bundle 这是二进制的安装文件  而 tar.gz 这类的只是压缩包&#xff08;相当于 .rar,.zip 压缩包一样&#xff09;,如果此类文件是程序的话&a…...

微信小程序导入微信地址

获取用户收货地址。调起用户编辑收货地址原生界面&#xff0c;并在编辑完成后返回用户选择的地址。 1&#xff1a;原生微信小程序接口使用API&#xff1a;wx.chooseAddress(OBJECT) wx.chooseAddress({success (res) {console.log(res.userName)console.log(res.postalCode)c…...

如何在Debian中配置代理服务器?

开始搭建代理服务器 首先我参考如下文章进行搭建代理服务器&#xff0c;步骤每一个命令都执行过报了各种错&#xff0c;找了博客 目前尚未开始&#xff0c;我已经知道我的路很长&#xff0c;很难走呀&#xff0c;加油&#xff0c;go&#xff01;go&#xff01;go&#xff01; …...

在外远程NAS群晖Drive - 群晖Drive挂载电脑磁盘同步备份【无需公网IP】

文章目录 前言1.群晖Synology Drive套件的安装1.1 安装Synology Drive套件1.2 设置Synology Drive套件1.3 局域网内电脑测试和使用 2.使用cpolar远程访问内网Synology Drive2.1 Cpolar云端设置2.2 Cpolar本地设置2.3 测试和使用 3. 结语 前言 群晖作为专业的数据存储中心&…...

[SQL挖掘机] - 标量子查询

介绍: 标量子查询&#xff08;Scalar Subquery&#xff09;是一种特殊类型的子查询&#xff0c;它返回单个值作为结果&#xff0c;而不是结果集。标量子查询通常嵌套在另一个查询的选择列表、条件或表达式中&#xff0c;并提供单个值来完成计算、比较或作为查询结果的一部分。…...

MTK 进META的两种方式

1. Preloader进meta&#xff1a; 开机情况下&#xff1a;先发adb reboot meta进入Preloader&#xff0c;然后再进META 2. 开机后直接进meta...

AutoSAR系列讲解(实践篇)9.2-信息发送的Filter机制

再强调一遍哈,这几节的内容大家看不懂没关系。都属于不常用的知识,仅作了解,假如用到了可以再挖出来看看。还有一点,很多的英文不太好翻译,比如这里的Filter,翻译成滤波,筛选我感觉都不太贴切,干脆就直接叫Filter了,之后应该会出现类似的英文,博主尽量想办法让大家理…...

JVM详解(超详细)

目录 JVM 的简介 JVM 执行流程 JVM 运行时数据区 由五部分组成 JVM 的类加载机制 类加载的过程(五个) 双亲委派模型 类加载器 双亲委派模型的优点 JVM 中的垃圾回收策略 GC GC 中主要分成两个阶段 死亡对象的判断算法 引用计数算法 可达性分析算法 垃圾回收算…...

Vue学习Day3——生命周期\组件化

一、Vue生命周期 Vue生命周期&#xff1a;就是一个Vue实例从创建 到 销毁 的整个过程。 生命周期四个阶段&#xff1a;① 创建 ② 挂载 ③ 更新 ④ 销毁 1.创建阶段&#xff1a;创建响应式数据 2.挂载阶段&#xff1a;渲染模板 3.更新阶段&#xff1a;修改数据&#xff0c;更…...

Rust vs Go:常用语法对比(八)

题目来自 Golang vs. Rust: Which Programming Language To Choose in 2023?[1] 141. Iterate in sequence over two lists Iterate in sequence over the elements of the list items1 then items2. For each iteration print the element. 依次迭代两个列表 依次迭代列表项1…...

pytorch学习-线性神经网络——softmax回归+损失函数+图片分类数据集

1.softmax回归 Softmax回归&#xff08;Softmax Regression&#xff09;是一种常见的多分类模型&#xff0c;可以用于将输入变量映射到多个类别的概率分布中。softmax回归是机器学习中非常重要并且经典的模型&#xff0c;虽然叫回归&#xff0c;实际上是一个分类问题 1.1分类与…...

Docker compose(容器编排)

Docker compose&#xff08;容器编排&#xff09; 一、安装Docker compose 1.安装Docker compose Docker Compose 环境安装 Docker Compose 是 Docker 的独立产品&#xff0c;因此需要安装 Docker 之后在单独安装 Docker Compose#下载 curl -L https://github.com/docker/co…...

xmind latex【记录备忘】

xmind latex 换行 换行必须要有\begin{align}和\end{align}&#xff0c;此时再在里面用\才能换行&#xff0c;如果只写112\224是不能换行的...

RocketMQ(1.NameServer源码)

NameServer功能简述 主要功能如下 服务注册与发现&#xff1a;Nameserver扮演了RocketMQ集群中服务注册中心的角色。当RocketMQ中的Broker、Producer和Consumer启动时&#xff0c;它们会向Nameserver注册自己的网络地址和角色信息。Nameserver维护着集群中所有活跃实例的信息…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.

ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #&#xff1a…...

实战三:开发网页端界面完成黑白视频转为彩色视频

​一、需求描述 设计一个简单的视频上色应用&#xff0c;用户可以通过网页界面上传黑白视频&#xff0c;系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观&#xff0c;不需要了解技术细节。 效果图 ​二、实现思路 总体思路&#xff1a; 用户通过Gradio界面上…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

Android屏幕刷新率与FPS(Frames Per Second) 120hz

Android屏幕刷新率与FPS(Frames Per Second) 120hz 屏幕刷新率是屏幕每秒钟刷新显示内容的次数&#xff0c;单位是赫兹&#xff08;Hz&#xff09;。 60Hz 屏幕&#xff1a;每秒刷新 60 次&#xff0c;每次刷新间隔约 16.67ms 90Hz 屏幕&#xff1a;每秒刷新 90 次&#xff0c;…...

Qwen系列之Qwen3解读:最强开源模型的细节拆解

文章目录 1.1分钟快览2.模型架构2.1.Dense模型2.2.MoE模型 3.预训练阶段3.1.数据3.2.训练3.3.评估 4.后训练阶段S1: 长链思维冷启动S2: 推理强化学习S3: 思考模式融合S4: 通用强化学习 5.全家桶中的小模型训练评估评估数据集评估细节评估效果弱智评估和民间Arena 分析展望 如果…...