数据可视化——简单图形绘制(饼图,柱状图,直方图,散点图,箱线图,折线图)

*各种图形的label参数都与plt.legend函数配合使用

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

#更改文件存放提取路径
import os
os.chdir('')
data = pd.read_csv()

#数据按照地区求销量平均值
data_1 = data.groupby('Region').mean()['Sales']

x_data = data_1.values
y_label = data_1.index #y轴标签为数据第一行指标

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

饼图

饼图不适合取值过多的分类特征
pie(x,explode,labels,colors,autopct=,pctdistance,shadow,labeldistance,startangle,radius,wedgeprops,textprops,center)

  • explode:突出显示,即扇形与圆心距离
  • autopct:百分比显示格式
  • pctdistance:百分比标签与圆心距离
  • shadow:是否添加阴影效果
  • labeldistance:设置扇形标签与圆心距离
  • startangle:设置饼图初始摆放角度
  • radius:饼图半径大小
  • wedgeprops:内外边界属性(以字典形式表示)
  • counterclock:是否逆时针呈现
  • textprops:文本属性(以字典形式表示)
  • center:中心位置设置
explode = [0,0.1,0,0,0,0.2]
colors = ['yellow','red','purple','green','blue','darkred']

plt.pie(x=x_data,explode=explode,labels=y_label,colors=colors,autopct='.if%%',pctdistance=1.1,
        wedgeprops={
     'linewidth':1.5,'edgecolor':'green'},textprops={
     'fontsize':10,'color':'black'})
plt.title('标题',pad=30)
plt.show()

柱状图

bar(x,height,width,bottom,edge,color,linewidth,tick_label,align)

  • x:长条形中点横坐标,一般用range函数,range(0,n+1)
  • height:长条形高度
  • width:条形图宽度
  • bottom:用于绘制堆积柱状图,将哪组数据放在下方
  • edge:边框色
  • linewidth:边框宽度
  • tick_label:x轴刻度标签
  • align:x轴上对齐方式
data = [115,130,100,140]
plt.bar(x=range(1,5), height=data, align='center', color='yellow')
plt.xlabel('地区')
plt.ylabel('销量')
plt.title('不同地区的销量',pad = 15) #pad为标题与图表距离,一般15-30之间
plt.xlim(0,5)
plt.show()

数据可视化——简单图形绘制(饼图,柱状图,直方图,散点图,箱线图,折线图)_第1张图片

直方图

plt.hist(x,bins,width,color,linewidth,tick_label,align,density=True/False)

  • bins:条形数量,一般20-40
  • density:是否以频率形式展示
data = np.random.randn(10000)

plt.hist(x = data, bins = 30, color = 'purple',edgecolor = 'black' ,density = False)
plt.show()

数据可视化——简单图形绘制(饼图,柱状图,直方图,散点图,箱线图,折线图)_第2张图片

散点图

plt.scatter(x,y,s,color,marker,cmap,norm,alpha,linewidths,edgecolors)

  • s:散点大小
  • color:散点颜色
  • marker:散点形状
  • cmap:指定某个
  • colormap值
  • alpha:透明度
data1 = np.random.randn(10)
data2 = np.random.randn(10)

plt.scatter(x=data1, y=data2, color='steelblue', marker='o', s=100)
plt.show()

数据可视化——简单图形绘制(饼图,柱状图,直方图,散点图,箱线图,折线图)_第3张图片

箱线图

观察数据分散情况(是否有异常值)
plt.boxplot(x, notch, sym, vert, whis, positions, widths, patch_artist, meanline, showmeans, boxprops, labels, flierprops)

  • x:数据
  • patch_artist:是否填充箱体颜色
  • showmeans:是否显示均值
  • showfliers:是否表示有异常值
  • boxprops:设置箱体属性,如填充色color,边框色facecolor
  • flierprops:设置异常值属性,如标记形状marker,颜色markerfacecolor,大小markersize
  • meanprops:设置均值属性,如点形状,大小,颜色等 medianprops:设置中位数属性,如线类型,大小等
  • caprops:设置箱体顶端和末端线条属性,如颜色,粗细
    属性设置均为字典类型

折线图

即为plt.plot()函数

你可能感兴趣的:(Python,python,数据可视化)