|
楼主 |
发表于 2021-2-26 11:45:21
|
显示全部楼层
谢谢您的解答,第1个问题我明白了,第2个问题应该不是同时赋值的意思吧,前面x,y已经另外赋值了,另外附上完整的源代码,再帮我看看咯
#设置坐标轴的刻度样式
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.ticker import AutoMinorLocator,MultipleLocator,FuncFormatter
x=np.linspace(0.5,3.5,100)
y=np.sin(x)
fig=plt.figure(figsize=(8,8))
#创建图形实例,以英寸为单位,宽,高
ax=fig.add_subplot(111)
#画子图:子图总行数1,子图总列数1,子图位置1
ax.xaxis.set_major_locator(MultipleLocator(1.0))
ax.yaxis.set_major_locator(MultipleLocator(1.0))
#主刻度线,在x轴的1倍处分别设置主刻度线,参数multiplelocator(1.0)是设置主刻度线的显示位置
ax.xaxis.set_minor_locator(AutoMinorLocator(4))
ax.yaxis.set_minor_locator(AutoMinorLocator(4))
#次刻度线,设置次刻度线的显示位置,参数Autominorlocator(4)将每一份主刻度线区间等分4份
def minor_tick(x,pos): #n%n=0;m%n=m(m<n)
if not x%1.0:
return "" #若是整数,则返回“”
return "%.2f"%x #反之,返回x值的2位小数
ax.xaxis.set_minor_formatter(FuncFormatter(minor_tick))
#设置次刻度线显示位置的精度,FuncFormatter()是用来控制位置精度的
ax.tick_params("y",which='major',length=15,width=2.0,colors="r")
#设置刻度样式,which:设置主刻度的样式;length:设置主刻度线的长度;width:设置主刻度线的宽度;colors:设置主刻度线和主刻度线标签的颜色
ax.tick_params(which='major',length=5,width=1.0,labelsize=10,labelcolor='0.25')
#设置次要刻度样式,which:设置次要刻度的样式;length:设置次要刻度线的长度;width:设置次要刻度线的宽度;labelsize:设置次要刻度线标签的大小;labelcolor:设置次要刻度标签的颜色
ax.set_xlim(0,4)
#x显示的范围
ax.set_ylim(0,2)
#y显示的范围
ax.plot(x,y,c=(0.25,0.25,1.00),lw=2,zorder=10)
#plot函数:展现变量的变化趋势,ls是折线图的线条风格,linewidth是绘制的线条粗细,label是标记图形内容的标签文本,zorder : 控制绘图顺序,zorder值越小就越先绘制
ax.grid(linestyle="-",linewidth=0.5,color='r',zorder=0)
#grid函数:绘制刻度线的网格线,linestyle是网格线的线条风格,linewidth是绘制的线条粗细,color是颜色,zorder : 控制绘图顺序,zorder值越小就越先绘制
plt.show() |
|