python之绘图

设置:File→Settings...→Tools→Python Scientific→取消√

1. 入门:

import matplotlib.pyplot as plt
import numpy as np
# 1:创建一个当前画板,(编号,宽高(英寸))
plt.figure(1 ,figsize=(5,5))
# 2:将当前画板分为x行y列,并在第z个区域绘图
plt.subplot(211)
# 3:指定坐标轴的取值范围[xmin,xmax,ymin,ymax]
plt.axis([-1,4,-1,5])
x = np.arange(-1,4,0.01)
# 4:设置图的函数和属性,颜色(b、r、g、y)、形状(-、o、--、^、s),线的宽度
plt.plot(x,x,'g--',lw=3)
# 5:输入图名并展示
plt.title('picture1')
plt.subplot(212)
plt.axis([0,4,0,20])
x = np.arange(0,4,0.2)
plt.plot(x,x**2,'ro')
plt.title('picture2')
plt.show()

plt.figure(2,figsize=(5,5))
plt.subplot(111)
plt.axis([0,5,0,20])
x = np.arange(0,4,0.1)
plt.plot(x,x,'y--',x,np.power(x,2),'bs',x,np.power(x,3),'g^')
plt.title('picture3')
plt.show()

2. 折线图、统计图、函数:

import matplotlib.pyplot as plt
import numpy as np
plt.figure(1,figsize=(5,5))
# 画折线图、统计图
x = np.array([1,2,3,4,5,6,7,8])
y = np.array([3,5,7,6,2,6,10,15])
plt.plot(x,y,'black',lw=5)
z = np.array([1,2,3,4,5,6,7,8])
w = np.array([13,25,17,36,21,16,10,15])
plt.bar(z,w,color='pink')
plt.title('picture4')
plt.show()
# 画函数,加坐标注释
plt.figure(2,figsize=(5,5))
# plt.axis([-1,1,-1,3])
x = np.linspace(-1,1,50)
y1 = 2*x + 1
plt.plot(x,y1,'b-',lw=2)
y2 = x**2
plt.plot(x,y2,color='pink',linestyle='--',linewidth=2)
plt.xlabel(u'x轴单位:s',fontproperties='SimHei',fontsize=14)
plt.ylabel(u'y轴单位:m',fontproperties='SimHei',fontsize=14)
plt.title('picture5')
plt.show()

3. 离散图:

import numpy as np
import matplotlib.pyplot as plt
from downloadTxt import loadTxt
txtName2 = 'datingTestSet2.txt'
datas,labels = loadTxt(txtName2)
print(datas)
print(labels)
datas1 = []
datas2 = []
datas3 = []
n = len(labels)
for i in range(n):
    if labels[i] == 1:
        datas1.append(datas[i])
    elif labels[i] == 2:
        datas2.append(datas[i])
    elif labels[i] == 3:
        datas3.append(datas[i])

datas1 = np.array(datas1)
datas2 = np.array(datas2)
datas3 = np.array(datas3)
plt.figure(1,figsize=(8,8))
plt.subplot(111)
plt.scatter(datas1[:,1],datas1[:,2],marker='o',color='r',s=40,label='不喜欢')
plt.scatter(datas2[:,1],datas2[:,2],marker='+',color='b',s=40,label='魅力一般')
plt.scatter(datas3[:,1],datas3[:,2],marker='^',color='black',s=40,label='极具魅力')
plt.legend((u'不喜欢',u'魅力一般',u'极具魅力'),loc='best',prop={'family':'SimHei','size':14})
plt.xlabel(u'玩视频游戏所耗时间百分比',fontproperties='SimHei',fontsize=14)
plt.ylabel(u'每周消费的冰淇淋公升数',fontproperties='SimHei',fontsize=14)
plt.show()

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值