我有一个y = a*cos(2*pi*xc)
现在我想从0
到10c
进行绘制,并根据a
获取输出。这意味着我不想给a,b,c
赋予特定值,而是让函数图符合a,b,c
。
给你一个想法..那么,
x = [0, c/4, c/2, 3c/4....10c]
相应地
y = [a, 0, -a, 0, ....a]
因此,该图将以c
的倍数表示x轴,y轴将为a
的倍数
是否有根据这样的变量进行绘图的名称?
答案 0 :(得分:1)
不完全是。
情节内容始终为数字。
但您可以将x
乘以c
,将y
除以a
(以便您的函数变为cos(2*pi*x)
),然后更改{{3} }和xticks标签:
import numpy as np
import matplotlib.pyplot as plt
def xtick(x):
if x == 0: return 0
if x == int(x): return '%dc' % x
return ''
x = np.arange(0, 10, 0.25)
y = np.cos(2*np.pi*x)
plt.plot(x, y, 'ro')
plt.xticks(x, map(xtick, x))
plt.yticks([-1, 0, 1], ['-a', '0', 'a'])
plt.show()