matplotlib pandas 例,pandas plot和matplotlib的区别
Matplotlib是用于Python绘图和数据可视化的强大工具包。下面文章主要介绍关于熊猫和Python高级数据分析的Matplotlib绘图的相关资料。通过示例代码非常详细的介绍,有需要的朋友可以参考一下。
00-1010 I. matplotlib库II。熊猫绘画1。画一个简单的折线图1.1)一个简单的系列图的例子。plot()1.2)两个系列绘制的曲线可以叠加2。数据驱动折线图(苹果股票分析)3。画一个简单的直方图。画一个简单的直方图。绘制简单的核密度(“ked”)图。
目录
绘画图书馆。
将matplotlib.pyplot作为plt导入
1)plt.imread("图片路径")
函数:在加载图片后返回一个维度数组。
jin=plt.imread(。/Jin . png’)
金
数组([[[0.24313726,0.24313726,0.24705882],
.
[0.7294118,0.7294118,0.7294118 ]],dtype=float32)
金
(273, 411, 3)
这是一个三维数组。
第一层表示将图像分成273行,
第二层表示将图像的第一层的每一行分成411列,
第三层表示每个像素点中的(R,G,B)
:有些图片加载后最内层有4个元素,分别是(R,G,B,A[ alpha/transparency])
2)plt.imshow(ndarray)显示图片
函数:将多维数组绘制成一幅图片
Plt.imshow(nd) #可以通过传入加载的多维数组来渲染图片。
有些加载后数据范围为0-255的图像,需要在data /255后转换为0-1,这样就可以和0-1图像合并。
在这里,你可以对图片进行处理(反转、拉伸、变色)等等。
3)plt.imsave(ndarray)保存图片
plt.imsave(ndarray)
默认情况下保存到当前路径。
Plt.imsave (picture name.png ,图片数据,cmap=gray) #保存图片
Cmap:将图片保存为黑白图片。
一、matplotlib 库
二、Pandas绘图
1.绘制简单的线型图
画正弦曲线
#正弦曲线
X=np.linspace(0,2*np.pi,100) #从0到2取100份
Y=np.sin(x) # y是sin(x)的值
S=Series(data=y,index=x) #构建一个系列对象
S.plot() #使用系列的plot()方法
1.1)简单的Series图表示例 .plot()
align:center">
2)简单的DataFrame图表示例 .plot()
绘制余弦曲线
x = np.linspace(0,2*np.pi,100) # 从0 到 2π 取100份
2.数据驱动的线型图(分析苹果股票)
导包
import numpy as np
1.读取数据
读取文件AAPL.csv
df = pd.read_csv(./data/AAPL.csv)
2.检查数据类型
df.dtypes
Date object #时间的数据类型为对象,在使用中需要做处理
Open float64
High float64
Low float64
Close float64
Adj Close float64
Volume float64
dtype: object
3.将’Date’这行数据转换为时间数据类型
pd.to_datetime(Series对象)
功能: 将Series转换为时间数据类型
df[Date] # 这一列获取出来是一个Series
df.dtypes
Date datetime64[ns] #此时已经是时间类型的数据了
Open float64
High float64
Low float64
Close float64
Adj Close float64
Volume float64
dtype: object
4.将’Date’设置为行索引
df.set_index(Date,inplace=True)
5.绘制图形,以字段Adj Close(已调整收盘价格)为数据绘制
df[Adj Close].plot()
3.绘制简单的柱状图
1) Series柱状图示例,kind = ‘bar’/’barh’
随机产生5个数,对其绘制纵向柱状图
data: 生成之后为Y轴的数据 index: 生成之后为X轴的索引 s = Series(data=np.random.randint(0,10,size=5),index=list(abcde)) #随机产生5个数 s.plot(kind=bar)
随机产生5个数,对其绘制横向柱状图
data: 生成之后为Y轴的数据 index: 生成之后为X轴的索引 s = Series(data=np.random.randint(0,10,size=5),index=list(abcde)) s.plot(kind=barh)
2) DataFrame柱状图示例
随机产生一个二维数组,并绘制纵向(kind=’bar’)柱状图
index: 生成数据X轴的索引 columns: 特征的名称 df = DataFrame(np.random.randint(0,10,size=(8,4)),index=list(abcdefgh),columns=list(ABCD)) df.plot(kind=bar)
随机产生一个二维数组,并绘制横向(kind=’barh’)柱状图
4.绘制简单的直方图
直方图
直方图(Histogram)又称质量分布图。是一种统计报告图,由一系列高度不等的纵向条纹或线段表示数据分布的情况。 一般用横轴表示数据类型,纵轴表示分布情况。
s = Series(np.random.normal(loc=0,scale=5,size=10000)) # normal 正态分布
5.绘制简单的核密度(ked)图
核心密度估计:对分布的图进行估计核心
我们继续使用刚刚直方图的 Series的正态分布数据
Series(np.random.normal(loc=0,scale=5,size=10000))
直方图一般和核密度图常常被画在一起,既展示出频率,又展示出了概率
有两组数组,我们将这两组数据连接成为一个。
分析这组新数据
ndarr1 = np.random.normal(loc=-10,scale=5,size=5000) #第一组数据
s.plot(kind=kde) 展示某个位置的估计值 s.hist(density=True) 表示某个位置出现内容的实际频率
6.绘制简单的散点图
散布图是观察两个一维数据数列之间的关系的有效方法
示例数据
df = DataFrame(np.random.randint(0,150,size=(20,3)),columns=[python,math,eng])
将这组数据生成散点图
df.plot(kind=scatter,x=python,y=eng)
这样其实是没有什么实际的意义的
现在我们再加一列和python相关的数据
np.random.randint(-10,10,1)[0] # 0-10之间 随机取一个数
我们从数据是很难看出来python和php有什么关系
这时我们就可以用散点图来绘制出观察
可以看出有python的值增大,php的值也会增大。
总结
到此这篇关于Python高级数据分析之pandas和matplotlib绘图的文章就介绍到这了,更多相关Pythonpandas和matplotlib绘图内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。