import matplotlib.pyplot as plt
from matplotlib.pyplot import MultipleLocator
from matplotlib import patheffects
plt.rcParams['font.sans-serif'] = ['SimHei'] #定义使其正常显示中文字体黑体
plt.rcParams['axes.unicode_minus'] = False #用来正常显示表示负号
plt.rcParams['xtick.direction'] = 'in'#将x周的刻度线方向设置向内
plt.rcParams['ytick.direction'] = 'in'#将y轴的刻度方向设置向内
x = [[2000], [2001], [2002], [2003], [2004], [2005], [2006], [2007], [2008], [2009],[2010],[2011],[2012],[2013],[2014],[2015],[2016],[2017],[2018]]
y = [[139.], [139.], [129.], [146.], [144.], [137.], [130.], [116.], [131.], [128.],[141.],[115.],[133.],[122.],[120.],[118.],[107.],[102.],[85.]]
x = 1:0.05:10; scatter(x,cos(x));
plt.plot(figsize=(5,3))
plt.figure(figsize=(5,3))
plt.scatter(x, y, label = 'scatter',c='k') #画散点图
plt.xticks(range(2000,2019,2),rotation=30)
plt.xlabel('年份', fontsize=10)
plt.ylabel('事故数/起', fontsize=10)
x_major_locator = MultipleLocator(2)
把x轴的刻度间隔设置为2,并存在变量里
y_major_locator = MultipleLocator(20)
把y轴的刻度间隔设置为20,并存在变量里
ax = plt.gca()
ax为两条坐标轴的实例
ax.xaxis.set_major_locator(x_major_locator)
把x轴的主刻度设置为1的倍数
ax.yaxis.set_major_locator(y_major_locator)
把y轴的主刻度设置为10的倍数
plt.xlim(2000, 2018)
把x轴的刻度范围设置为-0.5到11,因为0.5不满一个刻度间隔,所以数字不会显示出来,但是能看到一点空白
plt.ylim(80, 160)
把y轴的刻度范围设置为80到150,
plt.tick_params(axis='both', which='major',labelsize=14)
plt.tight_layout() # 解决图片显示不全问题,一行代码搞定
plt.show()
plt.savefig("散点图.png", dpi=800)
plt.savefig("散点图a.tif", dpi=800)
plt.savefig("散点图a.jpg", dpi=800)
plt.savefig("新散点图.png", dpi=800)
plt.close()