赞
踩
目录
一.下载安装matplotlib和numpy(pyplot是不需要下载的)
注意:下载的时候一定一定要关闭加速器
在下载matplotlib和numpy的过程中遇到了许多麻烦但好在有csdn的各位大神问题都一一解决了下面是常见的问题
1.找不到满足xx要求的版本
- ERROR: Could not find a version that satisfies the requirement tensorflow-hub (from versions: none)
- ERROR: No matching distribution found for tensorflow-hub
http://t.csdn.cn/cojvT这个是大神的解决方法链接放在这了
2.已经下好了numpy但是在pycharm中无法调用
在终端中是可以import numpy的如图
但是在编译器中没有这个包
我们需要在终端中输入 where python!
得到第一个解释器是安装包下载到的位置
在pycharm的设置中把解释器改成终端中得到的第一个解释器就可以了
1.figure函数的应用
(1)参数和其意义
num:图像编号或名称,数字为编号 ,字符串为名称
figsize:指定figure的宽和高,单位为英寸;
dpi参数指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80 。1英寸等于2.5cm,A4纸是 21*30cm的纸张 。
facecolor:背景颜色
edgecolor:边框颜色
frameon:是否显示边框
(2)使用示例
- import matplotlib.pyplot as plt
- import numpy as np
- from matplotlib import pyplot as plot
- #自变量的范围
- x = np.arange(1,30)
- #方程组
- y = 6*x+6
- #设置绘图对象
- plt.figure(figsize=(10,5),dpi=120,facecolor='yellow')
- #图像上的函数
- plt.plot(x,y)
- #展示图像
- plt.show()
运行结果
2.plot函数的应用
plot是用来绘制线条或者标记的轴
(1)plot函数的各个参数的意义
plot(*args,**kwargs)
(2)plot函数的使用示例
- import numpy as np
- from matplotlib import pyplot as plt
- #第一个方程
- x = np.arange(1,30)#自变量的范围
- y = 6*x+6
-
- #第二个方程
- x1 = np.arange(1,30)#自变量的范围
- y1 = -2*x1+5
-
- #设置绘图对象
- plt.figure(figsize=(10,5))
- plt.plot(x,y,'r',x1,y1,':b')
- #展示图像
- plt.show()
运行结果
3.subplot函数的应用
subplot可以把figure分成n个子图,但是每一条subplot只会创建一个子图
(1)subplot各个参数的意义
nrows 参数:subplot的行数
ncols 参数:subplot的列数
plotnum 参数:subplot指定的区域
注意:如果三个参数都小于十 subplot(332)和subplot(3,3,2)是一样的
(2)subplot的使用示例(三角函数sin,cos,tan)
- import numpy as np
- from matplotlib import pyplot as plt
- #计算正弦曲线和余弦曲线上x和y坐标
- x = np.arange(0,3*np.pi, 0.1)
- y_sin = np.sin(x)
- y_cos = np.cos(x)
- y_tan = np.tan(x)
-
- #建立三个subplot网格,高为2 宽为 2
- #第一个图形
- plt.subplot(2,2,1)
- plt.plot(x,y_sin,'-.b')
- plt.title('sin')
- #第二个图形
- plt.subplot(2,2,2)
- plt.plot(x,y_cos,':m')
- plt.title('cos')
- #第三个图形
- plt.subplot(2,2,3)
- plt.plot(x,y_tan,'-r')
- plt.title('tan')
- #展示图像
- plt.show()
运行结果
4.add_axes的应用
add_axes方法为新增子区域,该区域可以在figure的任意位置,并且该区域可以设置任意大小
add_axes使用示例
- import numpy as np
- from matplotlib import pyplot as plt
- #新建figure
- fig = plt.figure()
- #定义数据
- x = [1,2,3,4,5,6,7]
- y = [1,3,4,2,5,8,6]
- #新建区域ax1
- #figure的百分比,从figure 10%的位置开始绘制,宽高是figure的 80%
- left,bottom,width,height=0.1,0.1,0.8,0.8
- ax1 = fig.add_axes([left,bottom,width,height])
- ax1.plot(x,y,'r')
- ax1.set_title('areal')
- #新增区域ax2
- left,bottom,width,height = 0.2,0.6,0.25,0.25
- ax2 = fig.add_axes([left,bottom,width,height])
- ax2.plot(x,y,'b')
- ax2.set_title('areal2')
- plt.show()
运行结果
三.matplotlib的进阶应用
1.绘制条形图
用matplotlib中的bar或者barh函数完成绘制
(1)垂直条形图
使用bar函数实现
示例
- import matplotlib.pyplot as plt
- import numpy as np
- #定义列表变量,显示世界主要国家的GDP数据
- GDP = [185691,112182.8,49386.4,34666.3]
- #定义列表变量,显示世界主要国家
- country = ['美国','中国','日本','德国']
- #中文乱码的处理
- plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
- #调用bar函数绘图
- plt.bar(range(4),GDP,align='center',color='red',alpha=0.6)
- #添加轴标签
- plt.ylabel('GDP')
- #添加标题
- plt.title('世界主要国家GDP大比拼')
- #添加刻度标签
- plt.xticks(range(4),country)
- #显示图形
- #为每个条形图添加数值标签
- for x,y in enumerate(GDP):
- plt.text(x,y+100,'%s'%round(y,1),ha='center')
- plt.show()
运行结果
(2).绘制水平条形图
使用barh函数表示
示例
- import matplotlib.pyplot as plt
- #定义列表变量,显示世界主要国家GDP数据
- GDP = [185691,112182.8,49386.4,34666.3]
- #定义列表变量,显示世界主要国家
- country = ['美国','中国','日本','德国']
- #中文乱码的处理
- plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
- #调用barh绘图
- plt.barh(range(4),GDP,align='center',color='blue',alpha=0.9)
- #添加轴标签
- plt.xlabel('GDP')
- #添加标签
- plt.ylabel('国家')
- #添加标题
- plt.title('世界主要国家GDP大比拼')
- #添加刻度标签
- plt.yticks(range(4),country)
- #为每个条形图添加数值标签
- for i in range(4):
- plt.text(x=GDP[i]+0.05,y=i,s='%d'%GDP[i])
- #显示图形
- plt.show()
运行结果
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。