matplotlib基础学习笔记

matplotlib是基于Python语言的开源项目,旨在为Python提供一个数据绘图包,实现专业的绘图功能,数据可视化。

import numpy as np  # 科学计算基础包
import matplotlib.pyplot as plt # 绘图
from matplotlib import font_manager as fm  # 字体
my_font = fm.FontProperties(fname="C:\WINDOWS\FONTS\DENG.TTF", size=12)
from mpl_toolkits.mplot3d import Axes3D # 3D
import matplotlib.gridspec as gridspec
from matplotlib import animation  # 动画

# 1、plt.plot() 线图
x = np.linspace(-3, 3, 50)
y1 = 2*x + 1
y2 = x**2

# 生成图片  label: 图例的名称, color:颜色, linestyle:线宽, linestyle:线的形式
plt.figure()
plt.plot(x, y1, label='线性')
plt.plot(x, y2, color='red', linewidth='1.0', linestyle='--', label='平方')
# 图例位置: loc='best', 图例展示的最佳位置(数据少的位置)
plt.legend(prop=my_font, loc='best')

# 修改设置坐标轴的取值
plt.xlim((-1, 2))
plt.ylim((-2, 3))

# 修改坐标轴的刻度
new_ticks = np.linspace(-1, 2, 5)
plt.xticks(new_ticks)

# $''$: 机器可读取的数学字体     \ : 空格转换符      r : 正则转换
plt.yticks([-1, 0, 1, 2, 3],
           [r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$really\ good$'])

# 添加标题
plt.title('线图plot()', fontproperties=my_font)

# 添加x, y轴的描述
plt.xlabel('x轴', fontproperties=my_font)
plt.ylabel('y轴', fontproperties=my_font, rotation=360)  # rotation:旋转角度

# 坐标轴的设置
ax = plt.gca()  # 获取整个图片

# 将不需要的框架边设置为无色
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')

# 将下边设置为x轴,左边设置为y轴
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')

# 设置坐标轴原点坐标
ax.spines['bottom'].set_position(('data', 0))
ax.spines['left'].set_position(('data', 0))

# annotation 添加注解
# 1、线条注解:
x0 = 0.5
y0 = 2*0.5 + 1
plt.scatter(x0, y0, s=50, color='b')  # 散点图      s : size
# 画线,两点成线[(x0, y0), (x0, 0)]
plt.plot([x0, x0], [y0, 0], 'k--', lw=2.5)

# 文本注释
'''
$2x+1=%s$: 需要添加注释的文本内容
xy=(x0,y0): 被注释的坐标
xycoords='data': 基于xy数据
xytext: 注释显示的位置
arrowprops: 箭头   connectionstyle:角度
'''
plt.annotate(r'$2x+1=%s$' % y0, xy=(x0, y0), xycoords='data', xytext=(+30, -30),
             textcoords='offset points', fontsize=16, arrowprops=dict(arrowstyle='->
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值