数据可视化(1)

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

1.简单折线图

python 复制代码
#绘制简单图表
import matplotlib.pyplot as plt
plt.plot([1,2,3,4,5])
plt.show()
python 复制代码
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()
python 复制代码
import pandas as pd
#绘制简单折线图
df=pd.read_excel('abc.xlsx')
df.head()
x=df['日期']
y=df['温度']
plt.plot(x,y)
plt.show()
python 复制代码
#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.散点图

python 复制代码
#散点图
x=[1,2,3,4,5]
y=[2,6,5,3,9]
plt.plot(x,y,'ro')#r代表红色,o代表是圆形
plt.show()
python 复制代码
#图布的设置
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.设置坐标轴和网格线

python 复制代码
#设置坐标轴
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.设置文本标签

python 复制代码
# 添加文本标签
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.添加文本注释

python 复制代码
# 添加文本注释
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.设置画布距离

python 复制代码
# 图表与画布之间的距离
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.折线图

python 复制代码
#折线图
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()
相关推荐
如若12310 小时前
利用 `OpenCV` 和 `Matplotlib` 库进行图像读取、颜色空间转换、掩膜创建、颜色替换
人工智能·opencv·matplotlib
敲代码不忘补水2 天前
Python Matplotlib 数据可视化全面解析:选择它的七大理由与入门简介
开发语言·python·信息可视化·numpy·pandas·matplotlib
c无序3 天前
数据可视化复习1-Matplotlib简介属性和创建子图
信息可视化·matplotlib
敲代码不忘补水4 天前
pandas 机器学习数据预处理:从缺失值到特征切分的全面解析
人工智能·后端·python·机器学习·numpy·pandas·matplotlib
NiNg_1_2344 天前
Python中Matplotlib详解
开发语言·python·matplotlib
两千连弹7 天前
计算机视觉 ---图像读取与显示(OpenCV与Matplotlib)
opencv·计算机视觉·matplotlib
zqzgng9 天前
Matplotlib库中show()函数的用法
matplotlib
孤客网络科技工作室9 天前
在 Jupyter Notebook 中使用 Matplotlib 进行交互式可视化的教程
ide·jupyter·matplotlib
叫我:松哥13 天前
基于python的天气数据采集与可视化分析,对20个城市的天气适宜出行度分析
开发语言·爬虫·python·数据分析·matplotlib·数据可视化·天气
小鹿( ﹡ˆoˆ﹡ )15 天前
Matplotlib 绘图艺术:从新手到高手的全面指南
python·matplotlib