x=np.linspace、plt.xlim和xticks的区别

import matplotlib.pyplot as plt
import numpy as np

#从[-1,1]中等距去50个数作为x的取值
x=np.linspace(-1,1,5)#图像仅在-1到1之间显示,显示5个点

y=x+1

#设置参数范围
plt.xlim((-1,5))

#设置点的位置
new_ticks = np.linspace(-1,2,5)
plt.xticks(new_ticks)

plt.plot(x,y,'ob-')
plt.show()

下面是对应图像:

  • 改变np.linspace的参数
import matplotlib.pyplot as plt
import numpy as np

#从[-1,1]中等距去50个数作为x的取值
x=np.linspace(-1,5,6)  #图像仅在-1到5之间显示,显示六个点

y=x+1

#设置参数范围
plt.xlim((-1,5))

#设置点的位置
#x轴的刻度显示在-1到2之间 因此当x=linspace(-1,5,6)的5这个参数位置最好小于2这个参数位置,图像才好看
new_ticks = np.linspace(-1,2,5) 
plt.xticks(new_ticks)

plt.plot(x,y,'ob-')
plt.show()

下面是对应图像

  • 改变plt.xlim的参数
import matplotlib.pyplot as plt
import numpy as np

#从[-1,1]中等距去50个数作为x的取值
x=np.linspace(-1,5,6)

y=x+1

#设置参数范围
#图像所显示x轴的长度
plt.xlim((-1,6)) 

#设置点的位置
new_ticks = np.linspace(-1,2,5)
plt.xticks(new_ticks)

plt.plot(x,y,'ob-')
plt.show()

下面是对应图像

  • 改变xticks参数
import matplotlib.pyplot as plt
import numpy as np

#从[-1,1]中等距去50个数作为x的取值
x=np.linspace(-1,5,6)

y=x+1

#设置参数范围
plt.xlim((-1,6))

#设置点的位置
#x轴的刻度显示-1到6,并且显示10个均匀分段刻度
new_ticks = np.linspace(-1,6,10)
plt.xticks(new_ticks)

plt.plot(x,y,'ob-')
plt.show()

下面是对应图像

import numpy as np import matplotlib.pyplot as plt # 设置参数 k = 4 # 花瓣数 a = np.linspace(0, 2 * np.pi, 100) # 参数a的取值范围 # 计算x和y的值 theta = np.linspace(0, 2 * np.pi, 100) r = 1 + np.sin(k * a) x = r * np.cos(theta) y = r * np.sin(theta) # 对x和y进行排序 sort_indices = np.argsort(x) x = x[sort_indices] y = y[sort_indices] # 计算流线图的速度向量场 dx = -np.sin(theta) + k * np.cos(k * a) * np.cos(theta) dy = np.cos(theta) - k * np.cos(k * a) * np.sin(theta) # 对dx和dy进行排序 dx = dx[sort_indices] dy = dy[sort_indices] # 绘制图像 fig, ax = plt.subplots(figsize=(6, 6)) ax.streamplot(x, y, dx, dy, color='purple', linewidth=1.5, density=1.5) # 设置坐标轴范围 ax.set_xlim([-2, 2]) ax.set_ylim([-2, 2]) # 隐藏坐标轴 ax.axis('off') plt.show()优化import numpy as np import matplotlib.pyplot as plt # 设置参数 k = 4 # 花瓣数 a = np.linspace(0, 2 * np.pi, 100) # 参数a的取值范围 # 计算x和y的值 theta = np.linspace(0, 2 * np.pi, 100) r = 1 + np.sin(k * a) x = r * np.cos(theta) y = r * np.sin(theta) # 对x和y进行排序 sort_indices = np.argsort(x) x = x[sort_indices] y = y[sort_indices] # 计算流线图的速度向量场 dx = -np.sin(theta) + k * np.cos(k * a) * np.cos(theta) dy = np.cos(theta) - k * np.cos(k * a) * np.sin(theta) # 对dx和dy进行排序 dx = dx[sort_indices] dy = dy[sort_indices] # 绘制图像 fig, ax = plt.subplots(figsize=(6, 6)) ax.streamplot(x, y, dx, dy, color='purple', linewidth=1.5, density=1.5) # 设置坐标轴范围 ax.set_xlim([-2, 2]) ax.set_ylim([-2, 2]) # 隐藏坐标轴 ax.axis('off') plt.show()优化 ValueError: 'y' or 'x' must be strictly increasing的异常
07-14
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值