问题叙述:

Because the task I promised Ms. Yang some time ago has not been completed, I take this opportunity to sort out the following contents and apologize, hoping to be forgiven by Ms. Yang.


一、折线图

# python绘制折线图教程
import matplotlib.pyplot as plt
# 引入csv模块
import csvpath="csv文件地址"
# 用csv文件数据
# with函数省略close操作
with open(path) as data:reader = csv.reader(data)rows = [row[0] for row in reader]# row for row in reader  把reader中每一行的数据取出来
# 输出表中的第一行数据作为展示
x=rows[1:]
print(x)with open(path) as data2:reader1 = csv.reader(data2)line = [i[1] for i in reader1]
y=line[1:]
print(y)plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 控制plt绘图中文显示代码  简称   rc配置 或者  rc参数(可配置多种属性)
# https://blog.csdn.net/weixin_39010770/article/details/88200298
# rc参数配置详情# plot中参数的含义分别是横轴值(x),纵轴值(y),线的形状、颜色,透明度,线的宽度和标签内容。
plt.plot(x, y, 'ro-', alpha=0.8, linewidth=1, label='图例内容')
# 折线图必备两个列表,分别用于x和y轴数据(自行填入或读取csv数据文件)
plt.legend(loc="upper left")
# 配置默认参数:实现plt.plot中label属性显示
# labels 是图例的名称(能够覆盖在plt.plot( )中label参数值)
# loc 代表了图例在整个坐标轴平面中的位置(一般选取'best'这个参数值)plt.xlabel('x轴名称')
plt.ylabel('y轴名称')
# 参数轴名称标识plt.show()
# 绘图

二、条形图

import matplotlib.pyplot as plt
import csv
path="csv文件地址"
# 用csv文件数据
# with函数省略close操作
with open(path) as data:reader = csv.reader(data)rows = [row[0] for row in reader]# row for row in reader  把reader中每一行的数据取出来
# 输出表中的第一行数据作为展示
x = rows[1:]
print(x)with open(path) as data2:reader1 = csv.reader(data2)line = [i[1] for i in reader1]
y = line[1:]
print(y)# 这两行代码解决 plt 中文显示的问题
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 条形图绘图基本属性格式如下:
# matplotlib.pyplot.barh(y, width, height=0.8, left=None, *, align=’center’, **kwargs)
plt.barh(x, y)  # 横放条形图函数 barh
# plt.bar(waters, buy_number)  竖直放置条形图函数  bar
plt.title('条形图')
plt.xlabel('x轴名称')
plt.ylabel('y轴名称')
plt.show()

三、饼状图

import matplotlib.pyplot as plt
import csv
path="csv文件地址"
# 中文字符设置
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 用csv文件数据
# with函数省略close操作
with open(path) as data:reader = csv.reader(data)rows = [row[0] for row in reader]# row for row in reader  把reader中每一行的数据取出来
# 输出表中的第一行数据作为展示
x=rows[1:]
print(x)with open(path) as data2:reader1 = csv.reader(data2)line = [i[1] for i in reader1]
y=line[1:]
print(y)# 各部分名称
labels = x
# 各部分数值大小
num = y# 画饼图(数据,数据对应的标签,百分数保留两位小数点)
plt.pie(num, labels=labels, autopct='%1.2f%%',textprops={'fontsize': 20, 'color': 'black'})
plt.title("饼状图绘制")
# 绘制函数
plt.show()

四、散点图

import matplotlib.pyplot as plt
import numpy as np
import csv
path="csv文件地址"
# plt格式处理
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 用csv文件数据
# with函数省略close操作
with open(path) as data:reader = csv.reader(data)rows = [row[0] for row in reader]# row for row in reader  把reader中每一行的数据取出来
# 输出表中的第一行数据作为展示
x=rows[1:]
print(x)with open(path) as data2:reader1 = csv.reader(data2)line = [i[1] for i in reader1]
y=line[1:]
print(y)# 颜色序列,也可以使用rgb
c = np.array([0,1,2,3,4])
# 简单参数介绍  c颜色参数  s散点大小
plt.scatter(x, y, c=c, s=100, label='图例内容')
plt.xticks(x)
plt.yticks(y)
plt.xlabel("x轴名称", fontdict={'size': 20})
plt.ylabel("y轴名称", fontdict={'size': 20})
plt.title("散点图绘制", fontdict={'size': 20})
plt.legend(loc='best')
plt.show()

五、箱线图

对于前几种基础图形,改进及完善的地方在于绘图参数的配置,线条的rc配置参数,图样丰富度等等。基本生成方法较为简单。对于箱线图的数据略有特殊。
我们采用DataFrame方法处理字典数据,同时注意的是用不同方法读取csv文件可能产生不同结果。DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import csvpath="csv文件地址"
# 格式处理
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 用csv文件数据
# with函数省略close操作
with open(path) as data:reader = csv.reader(data)rows = [row[0] for row in reader]# row for row in reader  把reader中每一行的数据取出来
# 输出表中的第一行数据作为展示
x=rows[1:]
print(x)with open(path) as data2:reader1 = csv.reader(data2)line = [i[1] for i in reader1]
y=line[1:]
print(y)int_lst = []
for item in y:int_lst.append(int(item))
print(int_lst)dic = dict.fromkeys(x, int_lst)
print(dic)
dic1=pd.DataFrame(dic)dt = pd.DataFrame(dic1)
# 用matplotlib来画出箱型图
plt.boxplot(dt)
plt.show()

解释说明

因实际要求,每个图的生成需要独立代码,顾没有用函数方法整合重复代码块,另外对于文件操作方法有很大改进空间,自行修改。

To Ms.Yang相关推荐

  1. E03.04 Blue-Collar Boom: How China Bounced Back From the Virus

    2021.03.04 文章目录 [课程导读] [英文原文] [外刊原文] [课程导读] 疫情下中国经济是如何复苏的?老干妈所在的贵州小镇昌明镇,提供了一个样本.<纽约时报>记者以贵州的昌明 ...

  2. 英语面试对话场景[进入外企的敲门砖]

    本文转自: http://blog.csdn.net/tryonmind/article/details/1626004 I:Interviewer(面试者) A:Applicant(求职者) 教育背 ...

  3. Saturday morning

    Saturday morning Lots of things should be going to do, it even makes me headache, but I do noting, a ...

  4. 【英语面试常见问题集锦】

    近日在网上收集了些英文面试的资料,整理出来供大家参阅.[@more@] 求职面试时的"甜言蜜语" 1. What is important to you in a job? Cha ...

  5. tr闭包_个人简历网页模板

    一.中文模版 中文求职信模板(一) 尊敬的先生/小姐: 您好!本人欲申请贵公司网站上招聘的网络维护工程师职位.我自信符合贵公司的要求. 今年7月,我将从清华大学毕业.我的硕士研究生专业是计算机开发及应 ...

  6. IT市场:英文求职信模板二

    2007年10月07日 16:23:00 Room 212 Building 343 Tsinghua University,Beijing 100084 Ms. Yang: I was referr ...

  7. 北京交通大学计算机学院 于剑,北京交通大学计算机与信息技术学院博导介绍:于剑...

    于剑 职 称: 教授 职 务: 系主任 学 历: 博士 办公电话: 86-10-51688291 办公邮箱: jianyu@bjtu.edu.cn 毕业学校: 北京大学 个人主页: http://ci ...

  8. 【找工作资料】英文求职信相关

    求职信的内容和格式 写求职信的目的是争取面试机会,换句话说,也就是要使对方相信你是一个值得考虑的人选.最有效的方法莫如强调你为何可于将来成为他可用之材.以下建议供你参考: (Your telephon ...

  9. 北京交通大学计算机系教授,北京交通大学教师名录

    论文/期刊 (1)于剑,图灵测试的明与暗,计算机研究与发展,57(5):906-911(2020) (3)Dong Deng,Liping Jing, Jian Yu,Shaolong Sun,Mic ...

最新文章

  1. 微生物生态学中的挑战:建立对于群落功能与动态的预测性认识
  2. [YTU]_2613( 距离产生美)
  3. JS(去掉前后空格或去掉所有空格)的用法
  4. 主叫号码未显示怎么设置_微信未授权抖音,应该怎么设置?
  5. nginx文件系统大小_详解Nginx系列
  6. win7 无法修改 host 文件解决方案
  7. BI如何在企业信息化中助ERP一臂之力?
  8. servlet 同版本对应的Tomcat版本 ,不同版本的web.xml写法
  9. WordPress 插件机制的简单用法和原理(Hook 钩子)
  10. 模块EMERSONDELTAVSLS1508/本特利330400-02-CN
  11. 饶阳彻查“黑砖窑”事件 卡酷族×××涉案人
  12. 安卓Android类原生系统官网集合
  13. (学信网联合万方)免费论文查重
  14. idea更新报Node remains in conflict冲突的解决办法
  15. 问卷设计一:问卷题目哪些有类型和注意要点?
  16. 新媒体运营学习路线及全套视频教程资源
  17. 王者荣耀的服务器是什么系统,王者荣耀健康系统 健康系统是什么
  18. vb.net 图片水平翻转_犁耕作业效果差?试试大马力拖拉机液压翻转犁正确调整与使用方法...
  19. doNet面试宝典-常见整理(重复率高)
  20. pythonQQ机器人系列:使用requests实现QQ机器人聊天(1-0)

热门文章

  1. ofbiz mysql空_[ofbiz]ofbiz数据库切换为mysql
  2. Python实现FLV视频拼接
  3. iconfont 介绍
  4. 添加对System.ComponentModel.DataAnnotations.Schema;的引用
  5. 数据治理-数据质量-数据质量实施方法
  6. 电能计量装置现场校验仪(AP2003-503)操作程序
  7. 在美光之后,又一家美国科技企业在中国溃败,美企再也傲不起来
  8. 远程会议的正确打开方式
  9. 数显之家快讯:【SHIO世硕心语】一位价值百万钟点工阿姨给我上的一堂课!
  10. 电子元器件—POGO PIN连接器