Matplotlib 基本使用

结果

"""
Matplotlib 基本使用
"""

# 指定显示方式:Mac命令行不显示图的时候,可以试试这个方法
import matplotlib
matplotlib.use('TkAgg')

import matplotlib.pyplot as plt
import numpy as np

# 创建一些数据
x = np.arange(0, 10, 0.2)
cos_data = np.cos(x)
sin_data = np.sin(x)
sqrt_data = np.sqrt(x)

plt.title('cos, sin, sqrt')

# 绘制曲线
plt.plot(x, cos_data, color='blue', linewidth=1, linestyle='-', marker='.', label=r'$y = cos{x}$')
plt.plot(x, sin_data, color='green', linewidth=1, linestyle='-', marker='.', label=r'$y = sin{x}$')
plt.plot(x, sqrt_data, color='m', label=r'$y = \sqrt{x}$')

# 设置坐标轴
# 拿到坐标轴
ax = plt.subplot()
# 去掉右边的边框线
ax.spines['right'].set_color('none')
# 去掉上边的边框线
ax.spines['top'].set_color('none')

# 移动下边边框线,相当于移动x轴
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))

# 移动左边边框经,相当于移动y轴
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))

# 设置x, y 轴的取值范围
plt.xlim(x.min()*1.1, x.max()*1.1)
plt.ylim(-1.5, 4.0)

# 设置x, y 轴的刻度值
plt.xticks([2, 4, 6, 8, 10], [r'2', r'4', r'6', r'8', r'10'])
plt.yticks([-1.0, 0.0, 1.0, 2.0, 3.0, 4.0], [r'-1.0', r'0.0', r'1.0', r'2.0', r'3.0', r'4.0'])

# 添加文字
plt.text(4, 1.68, r'$x \in [0.0, \ 10.0]$', color='k', fontsize=15)
plt.text(4, 1.38, r'$y \in [-1.0, \ 4.0]$', color='k', fontsize=15)

# 特殊点添加注解
# 使用散点图放大当前点
plt.scatter([8], [np.sqrt(8)], 50, color='m')
# 添加注解,并设定样式
plt.annotate(r'$2\sqrt{2}$', xy=(8, np.sqrt(8)), xytext=(8.5, 2.2), fontsize=16,
             color='#090909', arrowprops=dict(arrowstyle='->', connectionstyle='arc3, rad=0.1', color='#090909'))

# 设置图例
plt.legend(loc='upper left')
# plt.legend(['cos(x)', 'sin(x)', 'sqrt(x)'], loc='upper right')

# 显示图例
plt.show()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值