目录
Matplotlib数据可视化基础
前提:使用Python自带的可视化库叫做matplotlib
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
%matplotlib inline
plt.plot()折线图
x = [1,4,8]
y = [2,5,7]
plt.plot(x,y)

-默认的实线
color颜色
linewidth线宽度
'--'短划线
'-'实线
':'虚线
'step'阶梯图
'None’
x1 = np.arange(10)
y1 = x1**2
#-默认的实线,color颜色 linewidth线宽度 '--'短划线 '-'实线 ':'点 'step' 'None'
plt.plot(x1,y1,color='blue',linewidth=5,linestyle =':')
plt.plot(x,y,color='red')#将上一个折线图添加到这边
plt.show()#可省略,建议写上,强制前面的绘图代码把图像渲染出来

plt.bar()柱状图
条形图的横轴可以是字符串表示,起到标识作用
#条形图的横轴可以是字符串表示,起到标识作用
x = ['A','B','C','D','E','F','G']
y = [190,200,178,166,205,123,145]
#plt.bar(x,y,color=['red','blue','pink'])
#或者
plt.bar(x,y,color=np.random.random((7,3)))

plt.scatter()散点图
#横轴数据
tips = [1,3,5,6,7,9]
#纵轴数据
pay = [123,145,156,189,198,122]
#大小
size = np.array([1,2,4,6,10,16])
plt.scatter(tips,pay,s=size*100,color='pink')

pandas自带的绘图工具
#DataFrame二维
df = pd.DataFrame(data=np.random.randint(10,30,size=(10,3)),columns=['A','B','C'])
df

df.plot(kind='bar')

转置操作T
#转置操作
df.T.plot(kind='bar')

plt.pie()饼状图
#Series一维
s = pd.Series(data=np.random.randint(10,30,size=3),index=[1,2,3])
s.plot(kind='pie')


添加文字说明
#linspace 从0到2Π拆分出100个数,等差数列
x = np.linspace(0,2*np.pi,100)
y = np.sin(x)
#label就是图例要展示的文字信息
plt.plot(x,y,color='pink',label='line of sin',linestyle=':')
#允许展示图例
plt.legend()
#横轴标题
plt.xlabel('X')
#纵轴标题
plt.ylabel('Y')
#画布 标题
plt.title('y=sin(x)')

两条线添加图例
#两条线添加图例
plt.plot(x,np.sin(x),label='sin')
plt.plot(x,np.cos(x),label='cos')
plt.legend(loc='upper right')

中文显示异常
#中文显示异常
plt.rcParams['font.sans-serif']='SimHei'
plt.rcParams['axes.unicode_minus']=False
#plt.rcParams符号显示查找命令符找到axes.unicode_minus
plt.plot(x,y,label='正弦函数')
plt.title('正弦函数图')
plt.legend()
绘制多图
subplot()
subplot(abc) a行数 b列数 c子图序号,得出来的结果就像这样。

#调整画板大小
plt.figure(figsize=(12,9))
#分别获取字画布,再绘图
ax1 = plt.subplot(221)
ax1.plot(x,y)
ax2 = plt.subplot(222)
ax2.plot(x,np.cos(x))
ax3 = plt.subplot(223)
plt.bar(['A','B','C'],[1,2,3])
ax4 = plt.subplot(224)
plt.bar(['D','E','F'],[3,6,9])

这些都是基础知识,还需好好掌握,一起加油吧!
本文介绍了如何使用Matplotlib进行Python数据可视化,包括折线图、柱状图、散点图的创建,pandas内置绘图,饼状图的制作,以及添加文字说明、图例和多图展示。通过实例演示了关键API的使用和中文显示设置。

2549

被折叠的 条评论
为什么被折叠?



