python画图时y轴为啥是这样。。。(鱼币感谢)
想用python做人口预测,画图的时候y轴堆在一起。。。坐标轴名也显示不出来。求大神解答!import matplotlib.pyplot as plt
import xlrd
import numpy as np
data_birth = []
data_death = []
data = xlrd.open_workbook(r'C:\\Users\\11139\\Desktop\\工作簿1.xlsx',encoding_override='utf-8')
table = data.sheets()
for i in range(1,table.nrows):
alldata = table.row_values(i)
data_birth.append(alldata)
data_death.append(alldata)
# print(alldata+','+alldata)
x_data = np.arange(1978,2018)
data_birth = np.array(data_birth)
data_death = np.array(data_death)
plt.xlabel('年份')
plt.ylabel('百分比')
plt.plot(x_data,data_birth,'g')
plt.plot(x_data,data_death,'r')
plt.show()
matplotlib 不支持中文,要我们手动设置字体才行:
plt.rcParams['font.sans-serif']=['SIMHEI'] # 设置为微软雅黑
照成你重叠的原因是因为数据太多了,图片放不下,你可以用 yticks 设置下步长,来跨步长显示数据
plt.yticks(data_death[::10])# 这里设置步长为 10 ,你自己调整调整
Twilight6 发表于 2020-7-6 17:05
matplotlib 不支持中文,要我们手动设置字体才行:
这两个图的数据不能放一块,还是感谢你的回答 小马爱python 发表于 2020-7-6 17:14
这两个图的数据不能放一块,还是感谢你的回答
嗯,因为你的 y 值数据不一
你可以用 plt.subplot() 同个画布上 弄 两个折线图
可以参考参考我帖子里的基础操作:
【数据可视化】matplotlib.pyplot 绘制图表之——折线图
https://fishc.com.cn/thread-169010-1-1.html
(出处: 鱼C论坛)
学习一下
页:
[1]