做完任务的数据分析(但没有)
figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True)
num:图像编号或名称,数字为编号 ,字符串为名称
figsize:指定figure的宽和高,单位为英寸;
dpi参数指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80 1英寸等于2.5cm,A4纸是 21*30cm的纸张
facecolor:背景颜色
edgecolor:边框颜色
frameon:是否显示边框
原文链接:【Python绘图】figure语法及操作_小猪课堂的博客-CSDN博客_python中figure用法
主要是matplotlib的pie()
plt.pie(x, explode=None, labels=None, colors=None,autopct=None, pctdistance=None, shadow=None,labeldistance=None, startangle=None,radius=None, counterclock=None, wedgeprops=None,textprops=None, center=(0, 0), frame=False)
x:指定绘图的数据;
explode:指定饼图某些部分的突出显示,即呈现爆炸式;
labels:为饼图添加标签说明,类似于图例说明;
colors:指定饼图的填充色;
autopct:自动添加百分比显示,可以采用格式化的方法显示;
pctdistance:设置百分比标签与圆心的距离;
shadow:是否添加饼图的阴影效果;
labeldistance:设置各扇形标签(图例)与圆心的距离;
startangle:设置饼图的初始摆放角度;
radius:设置饼图的半径大小;
counterclock:是否让饼图按逆时针顺序呈现;
wedgeprops:设置饼图内外边界的属性,如边界线的粗细、颜色等;
textprops:设置饼图中文本的属性,如字体大小、颜色等;
center:指定饼图的中心点位置,默认为原点
frame:是否要显示饼图背后的图框,如果设置为True的话,需要同时控制图框x轴、y轴的范围和饼图的中心位置;
#控制x轴和y轴的范围
plt.xlim(0,4)
plt.ylim(0,4)
#将横纵标准化处理,保证是个正圆
plt.axes(aspect='equal')
#删除x轴和y轴的刻度
plt.xticks(())
plt.yticks(())
Pandas DataFrame是一个二维的数组结构
构造:pandas.DataFrame(data,index,columns,dtype,copy)
index是索引值
columns是列标签
显示网格线
data=pd.DataFrame(df2['gender'])
male=data.loc[(data['gender']=='Male')]
print(male)
如果要显示行数:len(male)
#进行数据清理
df2.dropna(axis=0,how='any',inplace=True)
age=[]
for dt in df2['birthyear']:
age.append(2015-dt)
df没定义,我就重新回到df的地方,运行了该语句
后面出现了name 'pd' is not defined
我又回去运行了pd的语句,然后回去运行df,再运行图片的语句,就成功了
一些知识补充:
1. 去掉坐标轴的方法:
plt.axis('off')
2.去掉刻度的方法:
plt.xticks([])
plt.yticks([])
改正后(成功)如下:
当时的问题是在自己一开始使用了dataFrame来表示其中的数值,后面就修改了数值计算的方法
#处理excel中的男女数据
data=pd.DataFrame(df2['gender'])
male=data.loc[(data['gender']=='Male')]
female=data.loc[(data['gender']=='Female')]
male_data=len(male)
female_data=len(female)
这个我查了很多都不知道该怎么去做,所以干脆就写成了定义一个age的列表还有for循环形式,就成功了
进度好慢,我觉得我把不同类型的bug都犯了,而且只能找到别人的实例在模仿,但又不一定满足自己的需求,只能再找
完成任务啊,ddl来了!
2022.11.12