写在前面
在说明坐标轴设置之前,我有必要和大家说清楚图像设置的一些方法,避免陷入困扰模糊的地步。前面我们说过,画图的三种方法(python之matplotlib (1 介绍及基本用法)-CSDN博客)。而设置也是在此的基础上进行的:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(1,11)
y=x**2
plt.figure()
plt.plot(x,y)
plt.xlim(0,15)
plt.ylim(0,200)
plt.xticks(range(0,15))
plt.yticks(range(1,200,10))
plt.xlabel('')
plt.ylabel('')
plt.title('图')fig=plt.figure()
ax=plt.gca()#没有参数
# fig,ax=plt.subplots()
ax.plot(x,y)
ax.set_xlim(0,15)
ax.set_ylim(0,200)
ax.set_xticks(range(0,15))
ax.set_yticks(range(1,200,10))
ax.set_xlabel('')
ax.set_ylabel('')
ax.set_title('figure')
plt.show()
大家观察上面的一些设置方法,无非是通过两个途径:plt.***或者ax.***,而ax.***往往前面会有'set_'字样。举个例子:plt.xticks和ax.set_xticks这两个功能是一样的,虽然plt.xticks没有说明是对哪一个坐标轴进行设置,但是他默认在哪一个plt.figure下,就是对所在的figure中的坐标轴进行设置。
坐标轴设置
坐标刻度
import matplotlib.pyplot as plt
import numpy as npx=np.arange(1,11)
y=x+2fig=plt.figure()
ax=plt.gca()
ax.plot(x,y)ax.set_ylim((1,15))
ax.set_ylabel('y')ax.set_xlim((0,12))
ax.set_xlabel('x')ax.set_xticks(range(0,12,1))
ax.set_yticks([4,7,10,14],['$very\ low$','$low$','$high$','$very\ high$'])plt.show()
设置坐标轴的标签label为set_xlabel和set_ylabel,设置坐标展示的范围是ax.set_ylim(y轴)和ax.set_xlim(x轴),传递的参数是一个元组(也可以是两个标量即ax.set_ylim(1,15) );而ax.set_yticks是设置y轴刻度,这里我设置了四个标准量度,第一个参数是列表,分别为四个量度标注的位置;第二个参数就是四个量度的名字,这里我使用的是latex的方式,短空格是‘\ ',当然大家也可以直接输入一系列字符串。
坐标轴的消除与移动
import matplotlib.pyplot as plt
import numpy as npx=np.arange(1,11)
y=x+2fig=plt.figure()
ax=plt.gca()
ax.plot(x,y)
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['bottom'].set_position(('data',2))
ax.spines['left'].set_position(('data',6))
plt.show()
在Matplotlib中,axes对象的spines属性提供了对坐标轴边界线(也称为“脊柱线”或“边框线”)的访问。这些脊柱线通常指的是坐标轴上的四条线:左侧(left)、右侧(right)、顶部(top)和底部(bottom)。通过修改这些脊柱线的位置,你可以改变坐标轴的外观,比如将它们移动到中心位置,或者完全隐藏它们。
而隐藏他们就是set_color('none'),虽然说是在设置颜色,但是后边的参数none让他没有了颜色,也就是消失了。 而set_position是设置轴的位置,传递的参数是一个元组:(’data',数据)
创作匆忙,如有错误请不吝赐教。