matplotlib绘图基本属性设置:
# -*- coding: utf-8 -*-
"""
Created on Tue Jul 24 15:11:36 2018
@author: Administrator
"""
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-np.pi, np.pi, 1000) # 均匀分布的1000个数 endpoint=False
cos_y = np.cos(x) / 2
sin_y = np.sin(x)
# 设置坐标轴边界 xlim ylim
plt.xlim(x.min() * 1.1, x.max() * 1.1)
plt.ylim(sin_y.min() * 1.1, sin_y.max() * 1.1)
# 设置刻度值 xticks yticks
plt.xticks([-np.pi, -np.pi / 2, 0, np.pi / 2, np.pi * 3 / 4,
np.pi],
[r'$-\pi$', r'$-\frac{\pi}{2}$', r'$0$',
r'$\frac{\pi}{2}$', r'$\frac{3\pi}{4}$',
r'$\pi$'])
# 格式化转义 字符串首尾 r'$...$' (matplotlib中)
# xticks(loc, labels): labels 格式化转义方法 r'$-\frac{\pi}{2}$'
# pi需要转义才能显示为字符 pai. 若$-pi$ 则直接显示-pi
# 如果没有第二个[]参数,刻度值显示如-3.142, -1.571...等浮点数,而不是-pi
plt.yticks([-1, -0.5, 0.5, 1]) # == ax.set_yticks([-1, -0.5, 0.5, 1])
# 获取当前坐标轴 axis
ax = plt.gca()
# 移动坐标轴:设置零点在坐标轴的位置 ,set_position(tuple) 元素为tuple
ax.spines['left'].set_position(('data',0)) #
ax.yaxis.set_ticks_position('left') # y轴'right': 刻度值显示在right坐标轴上
ax.spines['bottom'].set_position(('data',0))
ax.xaxis.set_ticks_position('bottom') # x轴top:ticks值显示在top坐标轴上
# 隐藏top和right边框
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
# 设置坐标轴标签
# ax.set_yticks([-1, -0.5, 0.5, 1] # 等价于 plt.yticks([-1, -0.5, 0.5, 1])
# ax.set_xticks([-np.pi, -np.pi / 2, 0, np.pi / 2, np.pi * 3 / 4,
# np.pi],
# [r'$-\pi$', r'$-\frac{\pi}{2}$', r'$0$',
# r'$\frac{\pi}{2}$', r'$\frac{3\pi}{4}$',
# r'$\pi$']) # 显示 -3 , -2, -1
# 设置图例legend, 可以直接设置在plt.plot的label属性中,然后plt.lengend()显示
plt.plot(x, cos_y,
linestyle='-',
linewidth=2,
color='dodgerblue',
label=r'$y=\frac{1}{2}$cos(x)') # r'$..$'外部不需要引号
plt.plot(x, sin_y,
linestyle='-',
linewidth=2,
color='orangered',
label=r'$y=sin(x)$') # label:legend显示的内容
plt.legend(loc='upper left') # loc顺序: “先上中下,再左中右” 默认上左
# 显示图像
plt.show()
NOTE: 注意用法和格式:
mp.xticks([-np.pi, -np.pi / 2, 0, np.pi / 2, np.pi * 3 / 4,
np.pi],
[r'$-\pi$', r'$-\frac{\pi}{2}$', r'$0$',
r'$\frac{\pi}{2}$', r'$\frac{3\pi}{4}$',
r'$\pi$'])
# 格式化转义 字符串首尾 r'$...$') (matplotlib中)
# xticks(loc, labels): labels 格式化转义方法 r'$-\frac{\pi}{2}$'
# pi需要转义才能显示为字符 pai. 若$-pi$ 则直接显示-pi
# 如果没有第二个[]参数,刻度值显示如-3.142, -1.571...等浮点数,而不是-pi