Python—–数据可视化(matplotlib)(二)

首页 » 数据科学库 » 正文

1.添加注释

plot.annotate('this is the bottom',xy=(0,1),xytext(0,20),
              arrowprops=dict(facecolor = 'r',frac=0.2,headwidth=30,width=20))

xy=箭头起始位置

xytext=注释位置

facecolor=箭头颜色

frac=箭头比例

headwidth=箭头宽度

width=箭身宽度

2.添加文本

plot.text(-2,40,'text test',family='fantasy',size=20,color='g',style='oblique',weight='light')

family=字体

style=斜体

weight=粗体

3.添加公式

plot.text(2,4,r"/alpha_i /beta_j /pi /lambda /omega",size=25)

注意要加r取消字符意,所有元素前要加反斜杠

4.区域填充

plt.fill(x,y1,'b',alpha=0.3)

plt.fill(x,y2,'r',alpha=0.3)

alpha=透明度

填充当中区域:

plt.fill_between(x, y1, y2, where=y1 > y2, facecolor='b', interpolate=True)
plt.fill_between(x, y1, y2, where=y1 < y2, facecolor='g', interpolate=True)

5.生成形状

xy1=np.array([0.2,0.2])
xy2=np.array([0.2,0.8])
xy3=np.array([0.8,0.2])
xy4=np.array([0.8,0.8])

circle=mpatches.Circle(xy1,0.05)

ax.add_patch(circle)

rect=mpatches.Rectangle(xy2,0.2,0.1,color='r')
ax.add_patch(rect)

polygon=mpatches.RegularPolygon(xy3,5,0.1,color='g')
ax.add_patch(polygon)

ellipse=mpatches.Ellipse(xy4,0.4,0.2,color='y')
ax.add_patch(ellipse)

圆形:xy1=圆心,第二个参数是半径

长方形:xy2=左下角的点坐标,先宽长度,再高长度

多边形:xy3=中心位置,第二个参数是多少条边,然后是半径长度

椭圆:xy4=中心位置,第二个参数是直径

6.绘制极坐标

theta = [0, np.pi / 2, np.pi, 3 * np.pi / 2, 2 * np.pi]

ax = plt.subplot(111, projection='polar')

ax.plot(theta, r, color='r', linewidth=3)

7.绘制散点-条形图

import numpy as np
import matplotlib.pyplot as plt

plt.style.use('ggplot')

x = np.random.randn(200)
y = x + np.random.randn(200) * 0.5

margin_border = 0.1
width = 0.6
margin_between = 0.02
height = 0.2

left_s = margin_border
bottom_s = margin_border
height_s = width
width_s = width

left_x = margin_border
bottom_x = margin_border + width + margin_between
height_x = height
width_x = width

left_y = margin_border + width + margin_between
bottom_y = margin_border
height_y = width
width_y = height

plt.figure(1, figsize=(8, 8))

rect_s = [left_s, bottom_s, width_s, height_s]
rect_x = [left_x, bottom_x, width_x, height_x]
rect_y = [left_y, bottom_y, width_y, height_y]

axScatter = plt.axes(rect_s)
axHisX = plt.axes(rect_x)
axHisY = plt.axes(rect_y)

axHisX.set_xticks([])
axHisY.set_yticks([])

axScatter.scatter(x, y)

bin_width = 0.25

xymax = np.max([np.max(np.fabs(x)), np.max(np.fabs(y))])

lim = int(xymax / bin_width + 1) * bin_width

axScatter.set_xlim(-lim, lim)
axScatter.set_ylim(-lim, lim)

bins = np.arange(-lim, lim + bin_width, bin_width)

axHisX.hist(x, bins=bins)
axHisY.hist(y, bins=bins, orientation='horizontal')

axHisX.set_xlim(axScatter.get_xlim())
axHisX.set_ylim(axScatter.get_ylim())
plt.show()

未经允许不得转载:作者:1146-陶同学, 转载或复制请以 超链接形式 并注明出处 拜师资源博客
原文地址:《Python—–数据可视化(matplotlib)(二)》 发布于2020-07-11

分享到:
赞(0) 打赏

评论 抢沙发

评论前必须登录!

  注册



长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

Vieu3.3主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录