matplotlib画图

xiaoxiao2021-02-28  124

官网:http://matplotlib.org/index.html

matplotlib是一个用于创建出版智联图表的桌面绘图包(主要是2D方面)。

matplotlib API函数(如plot和close)都位于matplotlib.pyplot模块中,其通常的引入约定是:

import matplotlib.pyplot as plt

Figure和Subplot matplotlib的图像都位于Figure对象中。你可以用plt.figure创建一个新的Figure:

fig = plt.figure()

这时会弹出一个空窗口。 不能通过空Figure绘图。必须用add_subplot创建一个或多个subplot才行:

ax1 = fig.add_subplot(2, 2, 1) // axes坐标系

// axes坐标系 axis是坐标轴 add_subplot方法返回的是Axes对象。

Figure的subplots_adjust方法可以轻而易举地修改subplots的间距。

颜色、标记和线型:ax.plot(x, y, 'g--') 刻度、标签和图例: 使用过程型的pyplot接口; 更为面向对象的原生matplotlib API。

xlim控制图表的范围,xticks刻度位置,xticklabels刻度标签。 plt.xlim() plt.xlim([0, 10]) ax.get_xlim ax.set_xlim

设置标题、轴标签、刻度已经刻度标签

ticks = ax.set_xticks([0, 250, 500, 750, 1000]) labels = ax.set_xticklabels(['one', 'two', 'three', 'four', 'five'], rotation=30, fontsize='small') ax.set_title('...') ax.set_xlabel('...')

添加图例(legend)

ax.plot(x, y, 'k', label='...') ax.legend()

注解以及在Subplot上绘图 注解可以通过text、arrow和annotate等函数进行添加。 text可以将文本绘制在图表的指定坐标(x, y),还可以加上一些自定义格式:

ax.text(x, y, 'Hello world!', family='monospace', fontsize=10) ax.annotate(s='hello world', xy=(2, 5), xytext=(4, 8), arrowprops=dict(facecolor='black'))

画向量:

import numpy as np import matplotlib.pyplot as plt ax = plt.axes() ax.set_xlim(-4,8) ax.set_ylim(-2,6) ax.grid() ax.set_aspect('equal') v = np.array([4,1]) w = np.array([-2,2]) z = np.array([0,0]) ax.annotate("", xy=v, xytext=z, arrowprops=dict(arrowstyle="->")) ax.annotate("", xy=w, xytext=z, arrowprops=dict(arrowstyle="->")) ax.annotate("", xy=v+w, xytext=z, arrowprops=dict(arrowstyle="->")) ax.annotate("", xy=v-w, xytext=z, arrowprops=dict(arrowstyle="->")) ax.text(v[0], v[1], 'v') ax.text(w[0], w[1], 'w') ax.text((v+w)[0], (v+w)[1], 'v+w') ax.text((v-w)[0], (v-w)[1], 'v-w') plt.show()

转载请注明原文地址: https://www.6miu.com/read-58417.html

最新回复(0)