问题
我们在用matplotlib绘制图的时候总是有各种需求,比如下图为matplotlib默认设置画的正弦图
但是我们的心中想要达到的目标图为下图,那么就需要对坐标轴进行设置。
解决方案
这里要介绍matplotlib绘图辅助工具包mpl_toolkits,里面包含了一系列对于坐标轴设置的方法。
首先导入辅助工具包里面的轴系设置包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import mpl_toolkits.axisartist as axisartist
#导入辅助工具包里面的坐标轴系设置方法axisartist
新建画板,添加绘图区
fig = plt.figure('Sine Wave', (10,8))
#figure(num, figsize, dpi, facecolor, edgecolor, frameon, FigureClass, clear)
#新建了一个画板(画图视窗)
ax = axisartist.Subplot(fig, 1,1,1)
fig.add_axes(ax)
#新建一个轴系图(绘图区)对象ax,并添加到画板中
隐藏默认坐标轴(上下左右边框),并新建坐标轴X-Y,同时设置刻度标识方向
ax.axis[:].set_visible(False)
#
ax.axis["x"] = ax.new_floating_axis(0, 0)
ax.axis["y"] = ax.new_floating_axis(1, 0)
#new_floating_axis(self, nth_coord, value, axis_direction='bottom')
#新建可移动的坐标轴
ax.axis