matplotlib简单图 巩固

字体
import matplotlib.pyplot as plt


plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签 plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

折线图
plot_params = '''
参数      接收值             说明                 默认值
x,y      array        表示 x 轴与 y 轴对应的数据; 无
color     string       表示折线的颜色;           None
marker    string       表示折线上数据点处的类型;  None 
linestyle string       表示折线的类型;            -
linewidth 数值         线条粗细:      linewidth=1.=5.=0.3 1
alpha     0~1之间的小数 表示点的透明度;           None
label     string       数据图例内容:    label=‘实际数据’ None
'''
x = df['姓名'].head()
y = df['交易额'].head()
# x,y 的值
plt.title('员工和营业额之间的折线图')
# 设置标题


plt.plot(x, y, color='blue',marker='*',linestyle = '-',
         linewidth = 0.8,alpha = 0.6,label='营业额')
# 折线图参数


plt.legend()
# 显示图例
plt.xlabel('员工姓名')
# 设置 x 轴标题
plt.xticks(rotation = 45)
# x 轴的字体倾斜
plt.ylabel('营业额(元)')
# 设置 y 轴
plt.show()

 


柱状图
bar_params = '''
参数     说明             类型
x,y      x坐标,y坐标     int,float
width   宽度 0~1,       默认0.8
alpha   透明度          0~1之间的小数 
bottom  条形的起始位置  也是y轴的起始坐标 , 整数
align   条形的中心位置  "center","lege"边缘
edgecolor 边框颜色
linewidth 边框宽度
color   条形的颜色    "r","b","g","#123465",默认"b"
                    'c', 'r', 'g', 'k', 'y', 'm', 'b'
'''
x = df['姓名'].head()
y = df['交易额'].head()
# x,y 的值
plt.title('员工和营业额之间的柱状图')
# 设置标题

plt.bar(x, y,width = 0.3,bottom = 100,align = 'center',
        edgecolor = 'y',linewidth = 3,color = ['c','r','g','k','y'],
       label='营业额')
# 柱状图参数

plt.legend()
# 显示图例
plt.xlabel('员工姓名')
# 设置 x 轴标题
plt.xticks(rotation = 45)
# x 轴的字体倾斜
plt.ylabel('营业额(元)')
# 设置 y 轴
plt.show()

 


散点图
scatter_params = '''
参数       说明
x,y      x轴 和 y轴对应的数据
c        散点标记的颜色,为指定的色彩、数值序列或者颜色序列。
        'c', 'r', 'g', 'k', 'y', 'm', 'b'
marker   散点标记类型,默认为圆圈。
cmap     仅当c参数为颜色序列的时候使用。
alpha    透明图设置,取值范围[0,1]。0:透明,1:不透明。
norm    仅当c为数值序列的时候,通过colors.Normalize将值进行正则化。
linewidths   散点标记的边界的宽度。
edgecolors   散点标记的边界的颜色。
'''
x = range(len(df['交易额']))
y = df['交易额']

plt.title('员工和营业额之间的散点图')
# 设置标题

plt.scatter(x, y,s = 20,c = 'g',marker = '*',
        alpha = 0.8,linewidths = 0.5,edgecolors = ['c', 'r', 'g', 'k', 'y', 'm', 'b'])
# 散点图参数

plt.xlabel('员工姓名')
# 设置 x 轴标题
plt.xticks(rotation = 45)
# x 轴的字体倾斜
plt.ylabel('营业额(元)')
# 设置 y 轴
plt.show()


饼图
pie_params = '''
参数                  说明
x        (每一块)的比例,如果sum(x) > 1会使用sum(x)归一化;
labels   (每一块)饼图外侧显示的说明文字;
explode  (每一块)离开中心距离;
startangle 起始绘制角度,默认图是从x轴正方向逆时针画起,如设定 =90 则从y轴正方向画起;
shadow   在饼图下面画一个阴影。默认值:False,没有阴影;
labeldistance  label标记的绘制位置,相对于半径的比例,默认值为1.1, 如<1则绘制在饼图内侧;
autopct  控制饼图内百分比设置,可以使用format字符串或者format function
           '%1.1f'指小数点前后位数(没有用空格补齐);
pctdistance 类似于 labeldistance,指定 autopct 的位置刻度,默认值为0.6
radius         控制饼图半径,默认值为1
counterclock  指定指针方向;布尔值,可选参数,默认为:True,逆时针
wedgeprops 字典类型,可选参数,默认值:None。参数字典传递给wedge对象用来画一个饼图。
        例如:wedgeprops={'linewidth':3}设置wedge线宽为3。
textprops   设置标签(labels)和比例文字的格式;字典类型,可选参数,默认值为:None。
        传递给text对象的字典参数。textprops={'fontsize':20,'color':'black'}
center     浮点类型的列表,可选参数,默认值:(0,0)。图标中心位置。
frame      布尔类型,可选参数,默认值:False。如果是True,绘制带有表的轴框架。
rotatelabels  布尔类型,可选参数,默认为:False。如果为True,旋转每个label到指定的角度。
'''
x = df.groupby(by = '姓名')['交易额'].sum()

plt.title('员工和营业额之间的饼图')
# 设置标题

plt.pie(x,labels = x.keys(),explode = [0,0.1,0,0.1,0.3,0.4],startangle = 30,
        shadow = True,labeldistance = 1.3,autopct = '%1.1f',pctdistance = 0.5,
        radius = 0.9,counterclock = True,wedgeprops = {'linewidth':3},
        textprops = {'fontsize':14,'color':'black'},center = (2,2),frame = False,
        rotatelabels = False
        
       )
# 饼图参数

plt.xlabel('员工姓名')
# 设置 x 轴标题
plt.ylabel('营业额所占百分比')
# 设置 y 轴
plt.show()

 


legend_params = '''
参数                         说明
loc = 'upper right'         位于右上角
bbox_to_anchor = [0.5, 0.5]  外边距 上边 右边
ncol = 2                     分两列
borderaxespad = 0.3         图例的内边距
'''

2021-01-25

posted @ 2021-01-25 16:41  CodeYaSuo  阅读(110)  评论(0编辑  收藏  举报