数据可视化第二章好题

使用pyplot的plot()函数绘制折线图

plot(x,y,fmt,scalex=True,scaley=True,data=None,label=None,
*args,**kwargs)

(1)x : 横轴变量名

(2)x : 纵轴变量名

(3)fmt : 格式参数集合,可以使用关键字参数对单个属性赋值,如颜色,线的类型等

(4)data : 参数可以使用所有可被索引的对象数据类型,如字典、Pandas中的DataFame或NumPy中的结构化数组等

绘制一条正弦曲线

import matplotlib.pyplot as pyplot  #导入matplotlib绘图库
import numpy as np  #导入numpy库
x=np.linspace(0.1,10,100)  #start=0.1,end=10,生成100个等距的样本包括end
y=np.sin(x)  #调用np的正弦函数
pyplot.plot(x,y,color='green',linestyle='-',linewidth=1,label='sin() by plot()')
#横坐标为x,纵坐标为y,颜色为绿色,线的样式为折线,线宽为1,标签是sin() by plot()
pyplot.legend()
pyplot.show()

 绘制红色、蓝色两条折线

import matplotlib.pyplot as plt # 导入matplotlib绘图工具箱
import numpy as np # 导入numpy
a=np.random.random((9,3))*2 # 生成9行3列的随机浮点数,由于乘2,数值范围为(0,2)
y1=a[:,1] # 取所有行的第2列数据为y1
y2=a[:,2] # 去所有行的第3列数据为y2
x=np.arange(1,10) # x为[1,2,3,4,5,6,7,8,9]
ax=plt.subplot(111) # 1行1列的一张子图,即只有一张图。三个1分别表示1行、1列、第1个
width=10 # 宽度为10个单位
hight=3 # 高度为三个单位
ax.axes.set_xlim(-0.5,width+0.2) # 设置横轴范围为-0.5到10.2
ax.axes.set_ylim(-0.5,hight+0.2) # 设置纵轴范围为-0.5到3.2
plotdict={'dx':x,'dy':y1} # 把x和y1的数据放到plotdict中
ax.plot('dx','dy','bD-',data=plotdict) # 对y1的数据作图,b表示蓝色,D表示菱形,-表示实直线
ax.plot(x,y2,'r^--') # 对y2的数据作图,r表示红色,^表示三角形,--表示破折线
plt.show()

 使用bar()绘制柱形图或堆积柱形图

import numpy as np
import matplotlib.pyplot as plt
# 定义 x 轴和 y 轴的数据
x = np.arange(5)
y1_max = np.array([10,8,7,11,13])
# 柱形的宽度
bar_width = 0.3
#绘制柱形图
plt.plot(x,y1,tick_label=['a','b','c','d','e'],width=bar_width)
# 显示图形
import numpy as np
import matplotlib.pyplot as plt
# 定义 x 轴和 y 轴的数据
x = np.arange(5)
y1 = np.array([11,8,7,9,13])
y2 = np.array([6,5,10,13,8])
# 柱形的宽度
bar_width = 0.3
#绘制堆积柱形图
plt.bar(x,y1,tick_label=['a','b','c','d','e'],width=bar_width)
plt.bar(x,y2,bottom=y1,width=bar_width)
# 显示图形
plt.show()

使用barh()绘制条形图或堆积条形图

 

barh(y, width, height=0.8, left=None, *, align='center', **kwargs)
plt.barh(
          y,   #y轴坐标
          width,   #主体长度
          height=0.8,   #指定条形宽度 默认值:0.8
          left=0.0,  #指定x轴高度起始值 默认值:0.0
          align='center' or 'edge',   #指定对齐方式:center:中心堆成 edge:边缘对称
          alpha,  #指定透明度
          color,   #指定条形颜色
          ec,   #指定条形图边缘颜色(是edgecolor的缩写)
          lw,   #指定条形图边缘线宽(是linewidth的缩写)
          ls,   #指定条形图边缘线条样式(是linestyle的缩写)
          fill=True or False,   #是否填充颜色
          yerr,   #指定误差大小,用于在条形图上添加误差线
          ecolor,   #指定误差线的颜色
          joinstyle='miter' or 'round' or 'bevel',   #指定条形图边角连接模式
          hatch={'/', '\\', '|', '-', '+', 'x', 'o', 'O', '.', '*'},  #指定条形阴影
          label   #指定图例的显示内容
)
import matplotlib.pyplot as plt
import numpy as np
 
plt.rcParams['font.sans-serif']=['FangSong']
 
plt.figure(figsize=(5,5))# 绘制一个5*5的画布
ax=plt.axes()
 
x=np.arange(0,6)
y=np.random.random(6)
 
ax.barh(x,y)
 
plt.show()

 使用stackplot()绘制堆积面积图

stackplot(x,y,labels=(),baseline='zero',data=None,*args,**kwargs)

 

import numpy as np
import matplotlib.pyplot as plt
x = np.arange(1,13)
y_a = np.array([198,215,245,222,200,236,201,253,236,200,266,290])
y_b = np.array([203,236,200,236,269,216,298,333,301,349,360,368])
y_c = np.array([185,205,226,199,238,200,250,209,246,219,253,288])
# 绘制堆积面积图
plt.stackplot(x,y_a,y_b,y_c)
plt.show()

x:表示x轴的数据,可以是一维数
y:表示y轴的数据,可以是二维数组或一维数组序列
labels:表示每组折线及填充区域的标签
baseline:表示计算基线的方法,包括’zeros’,‘sym’,‘wiggle’和’‘weighted_wiggle’.其中’zero’表示恒定零基线,即简单的堆积图;‘sym’表示对称于零基线,'wiggle’表示最小化平方斜率的总和,'weighted_wiggle’表示执行相同的操作,但权重用于说明每层的大小

 使用hist()绘制直方图


hist(x, bins-None,rang=None, density-None, weights-None,
     cumulative-False, bottom-None, histtype-'bar', align='mid',
     orientation='vertical', rwidth=None, 1og=False, label=None,
     stacked-False, normed-None, *,data=None,**kwargs)

 使用pie( ) 绘制饼图或圆环图


   pie(x, explode=None, labels=None, autopct=None,
   pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None,
   radius=None, counterclock=True, wedgeprops=None, textprops=None,
   center(0, 0), frame=False, rotatelabels=False, *, data=None)

 x:表示扇形或楔形的数据。
explode:表示扇形或楔形离开圆心的距离。
·labels:表示扇形或楔形对应的标签文本。
autopct:表示控制扇形或楔形的数值显示的字符串,可通过格式字符串指定小数点后
的位数
‘pctdistance:表示扇形或楔形对应的数值标签距离圆心的比例,默认为0.6。shadow:表示是否显示阴影。
labeldistance:表示标签文本的绘制位置(相对于半径的比例),默认为1.1。
startangle:表示起始绘制角度,默认从x轴的正方向逆时针绘制。
radius:表示扇形或楔形的半径。
wedgeprops:表示控制扇形或楔形属性的字典。例如,通过 wedgeprops = {'width':0.7]将楔形的宽度设为0.7。
textprops:表示控制图表中文本属性的字典。
center:表示图表的中心点位置,默认为(0,0)。
frame:表示是否显示图框。
 

 

 

 

 

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值