python实现折线图和条形图

news2024/11/16 17:32:49

画图的部分函数

pandas

读取数据
相关包:import pandas as pd
函数:df=pd.read_excel(“文件名”) #读取excel文件
df.head(n)#查看前n行
df.tail(n)#查看后n行
df.shape #查看行数和列数
df.columns # 查看列索引
df.index #查看行索引
df.info() #查看索引、数据类型和内存信息
df.describe()#查看数值型列的汇总统计
df.apply(pd.Series.value_counts)#查看每一列的唯一值和计数
df.sort_values(“语文”,ascending=False)#按语文降序排序
df.groupby([‘省份’,‘城市’])#多列分组

matplotlib.pyplot

导包:import matplotlib.pyplot as plt

🕐 plt.rcParams[‘font.sans-serif’] = [‘Microsoft YaHei’]# 防止字体乱码
🕐plt.rcParams[‘axes.unicode_minus’] = False # 解决负号显示为方块的问题
🕐fig = plt.figure(参数)#生成一个画板
( num : 图像编号或名称,数字为编号,字符串为名称
figsize : 指定figure的宽和高,单位为英寸
dpi : 指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80
facecolor : 背景的颜色
edgecolor : 边框颜色
frameon : 是否显示边框)
🕐fig ,ax = plt.subplots(3,3)#生成a*b张子图
🕐fig.add_subplot(2, 2, 1)或者fig.add_subplot(221) #函数中2,2,1表示的意思是创建一个子图
🕐plt.plot(x,y,format_string,**kwargs)#折线图,x自变量,y因变量,format_string:颜色-每个点的标记样式-线样式,**kwargs:表示更细致的表达(优先级高于format_string)
🕐plt.xticks(np.linspace(a,b,n,endpoint=bool))#a,b:x坐标的范围,n:x坐标分成几等分,endpoint:包不包括最后一个,False表示不包括,True表示包括
🕐plt.show()#显示图像
🕐plt.legend(frameon=False,loc=“upper right”,fontsize=‘small’)#frameon有无框,false为无,loc图像位置,fontsize图像大小
🕐 plt.text(x, y,‘文字内容’,fontsize=18)#x,y表示添加文字的位置坐标,fontsize文字大小
🕐plt.xlabel()#横轴坐标
🕐plt.ylabel()#纵轴坐标
🕐plt.bar(x, y, width,color, edgecolor, bottom, linewidth, align, tick_label, align)#柱状图
(width:表示柱状图的宽度,取值在0~1之间,默认为0.8
color:柱状图的填充色
edgecolor:柱状图的边框颜色
bottom:柱状图底部离横轴的距离
linewidth:柱状图边框宽度
tick_label:柱状图的刻度标签,也可直接将标签赋值给x
align:指定x轴上对齐方式,“center”,"lege"边缘
plt.barh() # 水平柱状图)

折线图

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
# 防止字体乱码
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示为方块的问题
df = pd.read_excel("贵州鲜鸡蛋价格表.xlsx", header=0)
df['日期'] = pd.to_datetime(df['日期']).dt.date
df1 = df.loc[:, ["地区", "价格", "日期"]]
allData = df1.groupby("地区")
print(len(allData))
plt.figure(figsize=(6, 10), dpi=150, facecolor='pink')
index = 1

for name, value in allData:
    print(name)
    print(value["日期"])
    ax1 = plt.subplot(len(allData), 1, index)
    ax1.plot(np.array(value["日期"]), value["价格"])
    ax1.set_xlabel("日期",fontsize =8)
    ax1.set_ylabel("价格(kg/斤)",fontsize =8)
    ax1.set_title(name,fontsize =8)
    plt.tick_params(axis='both', labelsize=8)
    index += 1
plt.show()

在这里插入图片描述

条形图

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

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示为方块的问题
df = pd.read_excel("贵州鲜鸡蛋价格表1.xlsx")
df['日期'] = pd.to_datetime(df['日期']).dt.strftime('%Y-%m')
df.drop_duplicates(inplace=True)
df1 = df.groupby("地区")
plt.figure(figsize=(20, 8), dpi=80)
# 条形图宽度
n = -1
width = 0.9
for name, value in df1:
    print(value)
    array = np.arange(len(value))
    plt.bar(array + n * width / 3, value["价格"], label=name, width=width / 3)
    plt.xticks(array,value["日期"])
    n += 1
plt.legend() # 显示label
plt.xlabel("日期")
plt.ylabel("价格")
plt.show()

在这里插入图片描述

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

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

相关文章

怎样恢复删除的视频?视频恢复,4个方法!

案例:怎样恢复删除的视频 【谁懂啊!电脑里视频太多了太占内存,本想删除一些不太重要的,但却删错了!有朋友知道怎样恢复删除的视频吗?】 在数字化时代,我们经常使用电脑来存储和管理各种视频文…

股票量比实时筛选报警

一.什么是股票的量比 量比是短线投资一个参考指标,是衡量相对成交量的一个数值和指标,用于反映股票交易相对于以往的活跃程度;是指在股市开盘以后,平均每一分钟的成交量与过去五个交易日平均每分钟交易量的比。反映股票相对最近5…

自动驾驶定位模块的作用是什么?为什么会有多种坐标系?

无人车,要实现自动驾驶,首先要知道自己的的位置。更准确的说法是:相对某个坐标系,确定车辆的位置和姿态。 这个坐标系可以是局部的: 也可以是全局坐标系: 这是更大维度上的坐标系。 坐标系确定之后,相对坐标原点和坐标轴,车上坐标系(本地坐标系),平移得到位置(x…

SQL语句要点一文速览

以下内容参考《SQL必知必会(第4版)》 了解 SQL 数据库(database):保存有组织的数据的容器(通常是一个文件或一组文件)。最简单的办法是将数据库想象为一个文件柜。这个文件柜是一个存放数据的…

【数据结构】算法的时间复杂度和空间复杂度(下)(附leetcode练习题)

☃️个人主页:fighting小泽 🌸作者简介:目前正在学习C语言和数据结构 🌼博客专栏:数据结构 🏵️欢迎关注:评论👊🏻点赞👍🏻留言💪&…

【Linux】system V 共享内存

文章目录system V1. 共享内存原理第一阶段原理第二阶段原理2. 直接写代码--编写代码进行原理介绍shmget函数ftok函数key值用法1. 创建key值2. 创建共享内存 获取共享内存3. 将自己和共享内存关联起来4. 将自己和共享内存取消关联5. 删除共享内存用指令删除调用系统调用完整代码…

数据库管理-第六十六期 SQL Domain(20230413)

数据库管理 2023-04-13第六十六期 SQL Domain1 基本介绍2 Domain的表达式和条件3 语法4 语义5 示例总结第六十六期 SQL Domain 上一期一笔带过了部分Oracle 23c的新特性,这一期重点讲一下SQL Domain新特性。 【https://docs.oracle.com/en/database/oracle/oracle-…

【提升效率神器】Python简单批量生成PDF文档(详细做法)

文章目录前言一、准备二、基本使用三、批量生成PDF总结前言 日常办公中,经常会使用PDF文档,难免需要对PDF文档进行编辑,有时候PDF文档中的大部分内容都是一样的,只是发送对象不同。 这种模板套用的场景下,使用Python…

BI 知识大全,值得收藏的干货

01、什么是商业智能BI? 商业智能BI可以实现业务流程和业务数据的规范化、流程化、标准化,打通ERP、OA、CRM等不同业务信息系统,整合归纳企业数据,利用数据可视化满足企业不同人群对数据查询、分析和探索的需求,从而为…

OpenCV实例(三)答题卡识别

OpenCV实例(三)答题卡识别1.答题卡识别概述2.单道题目的识别2.1基本流程及原理2.2代码实例:作者:Xiou 1.答题卡识别概述 随着信息化的发展,计算机阅卷已经成为一种常规操作。在大型考试中,客观题基本不再…

重整网站。。。。。。。。。

重整网站 写好回复的人 “ xxxxxxxx”通知栏,并且快速跳转到需要的页面。个人页面,记录自己发送的消息与回复的信息。以css 上传的图片防止被拉伸拉坏。 下拉的选择下拉的分页的好处。 评论功能的那一栏中的一个小的评论,如果手机端的话&a…

RabbitMQ 保证消息不丢失的几种手段

文章目录1.RabbitMQ消息丢失的三种情况2.RabbitMQ消息丢失解决方案2.1 针对生产者2.1.1 方案1 :开启RabbitMQ事务2.1.2 方案2:使用confirm机制2.2 Exchange路由到队列失败2.3 RabbitMq自身问题导致的消息丢失问题解决方案2.3.1 消息持久化2.3.2 设置集群…

无废话硬核分享:Linux 基础知识点总结很详细,全的很,吐血奉献

Linux 的学习对于一个程序员的重要性是不言而喻的。前端开发相比后端开发,接触 Linux 机会相对较少,因此往往容易忽视它。但是学好它却是程序员必备修养之一。 Linux 基础 操作系统 操作系统Operating System简称OS,是软件的一部分&#x…

【0基础学爬虫】爬虫基础之数据存储

大数据时代,各行各业对数据采集的需求日益增多,网络爬虫的运用也更为广泛,越来越多的人开始学习网络爬虫这项技术,K哥爬虫此前已经推出不少爬虫进阶、逆向相关文章,为实现从易到难全方位覆盖,特设【0基础学…

物联网时代的网络安全

近年来,物联网 (IoT) 彻底改变了我们的生活和工作方式。从智能家居到自动驾驶汽车,物联网设备在我们的日常生活中变得越来越普遍。 根据 Statista 的一份报告,到 2025 年将有超过 750 亿个物联网 (IoT) 设备投入使用。 然而,这…

c++之STl容器-string

目录 容器的分类 string string的概念 string的初始化 string的遍历 string的一些基本操作 char*类型和string类型互转 字符串的连接 字符串的查找和替换 string的截断和删除 容器的分类 在实际的开发过程中,数据结构本身的重要性不会逊于操作于数据结构的算…

SpringMVC03-文件上传、异常处理、拦截器

SpringMVC03 SpringMVC的文件上传 一 、文件上传的前端必要前提 form 表单的 entcype取值必须是:multipart/form-data。默认值:application/x-www-form-urlencoded,是表单请求正文的类型method 属性取值必须是 post提供一个文件选择域 二…

利用ChatGPT,一分钟制作思维导图

大家好,我是易安! 今天我来教你如何使用ChatGPT,一分钟制作出一份思维导图 大纲选题 想到一个课题,然后人工梳理出内容大纲,是个挺费精力的事情。但利用ChatGPT来做这件事. 5秒就可以搞定啦! 例如&#xf…

Python安全攻防之第二章Python语言基础

2.3 Python模块的安装与使用python模块的安装pip3 install 模块名称py -3 -m pip install 模块名称python模块的导入与使用(1)Import模块名称采用“Import模块名称”方式时,需要在对象前面加上模块名称作为前缀,具体形式为“模块名…

Nextcloud去掉URL中的index.php以及强制https(Win10子系统WSL)

一、Nextcloud去掉URL中的index.php 1、启用相关模块 cd /var/www/nextcloud #进入程序目录sudo chmod -R 777 .htaccess #设置.htaccess文件权限可读写sudo a2enmod envaudo a2enmod rewrite #启用rewrite模块2、修改nextcloud配置文件 vim /var/www/nextcloud/config/…