import matplotlib.pyplot as plt
y_3=[11,17,16,11,12,11,12,6,6]
y_10=[26,26,28,19,21,17,16,19,18]
x_3=range(1,10)
x_10=range(15,24)
plt.figure(figsize=(20,8),dpi=80)
plt.scatter(x_3,y_3)
plt.scatter(x_10,y_10)
_x=list(x_3)+list(x_10)
_xtick_labels=['3月{}日'.format(i) for i in x_3]
_xtick_labels+=['10月{}日'.format(i-14) for i in x_10]
plt.xticks(_x,_xtick_labels)
plt.tick_params(labelsize=24)
plt.show()
你好!
'tuple’ object is not callable ==> “元组”对象不可调用
推测可能是题主 _x=list(x_3)+list(x_10) 的代码出问题了
但是我复制代码是可以正常运行的,我尝试了jupyter和vscode都可以正常运行
博主可以尝试重启jupyter的内核或者加上 %matplotlib inline 魔法函数
我用的测试代码:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
%matplotlib inline
y_3=[11,17,16,11,12,11,12,6,6]
y_10=[26,26,28,19,21,17,16,19,18]
x_3=range(1,10)
x_10=range(15,24)
plt.figure(figsize=(10,8),dpi=80)
plt.scatter(x_3,y_3)
plt.scatter(x_10,y_10)
_x=list(x_3)+list(x_10)
_xtick_labels=['3月{}日'.format(i) for i in x_3]
_xtick_labels+=['10月{}日'.format(i-14) for i in x_10]
plt.xticks(_x,_xtick_labels,rotation=90)
plt.tick_params(labelsize=24)
plt.show()
测试结果:
vscode
jupyter