如何使用matplotlib.pyplot将不同功能应用于同一图?

时间:2019-09-12 18:18:25

标签: python numpy anaconda spyder

我正在尝试使用功能matplotlib.pyplot在python上绘制图形,并且看起来当我运行代码时,它们适用于单独的图形。因此,当我应用plt.scatter(Lt,T)时,它显示了该图,然后当我应用plt.xlabel('Local Time(hours)')时,它确实运行了,但是运行到了一个新的图,而我放置时没有输入数据。 scatter(Lt,T),所以基本上我得到了只有x轴标题的纯图形。

import matplotlib.pyplot as plt
plt.scatter(L, T)
plt.axis([0,25,200,800])
plt.xlabel('Local Time')
plt.ylabel('Surface Temperature')
plt.title('Surface Temperature vs. Local Time')

我希望所有代码和功能都适用于同一张图。

2 个答案:

答案 0 :(得分:1)

我认为您需要使用show方法。通常,在定义了轴等之后,通常在末尾添加它。有时将其包装在如下函数中是有意义的。

import matplotlib.pyplot as plt

def plotter(L,T):
    plt.scatter(L, T)
    plt.axis([0,25,200,800])
    plt.xlabel('Local Time')
    plt.ylabel('Surface Temperature')
    plt.title('Surface Temperature vs. Local Time')
    plt.show()

plotter(L,T)

希望有帮助。

答案 1 :(得分:1)

您可以先创建一个declare @MySource sysname = 'YourTableName' , @MyField sysname = 'YourFieldName' , @strsql1 NVARCHAR(MAX) SELECT @strsql1 = 'DECLARE @rows INT = 1; WHILE @rows > 0 BEGIN delete top (10000) from ' + QUOTENAME(@MySource) + ' where ' + QuoteName(@Myfield) + '=''value''; SET @rows = @@ROWCOUNT; print convert(varchar(10), @rows) + '' row(s) affected''; END;' PRINT @strsql1 --EXEC sp_executeSql @strSql1 ,然后在其上绘图:

matplotlib.axes.Axes