python绘图房子_matplotlib画房子

趁着周末我又来更更新了,本章不讲自己的糟糕状况,反正一切努力,都是为了生活!

这章知识点.(matplotlib画楼房,暂时普及的知识都是基础,以后会普及以业务为导向的项目,分享的优秀代码源于网络,我更详细的加了注释,后期以业务场景的项目会结合已学知识点做结合,暂时水平达不到造轮子水平)

第二章:初到南城

CLG一路上跌跌撞撞,总算活着来到了南城门口,南城门外道道闪电从天际亮起,恶毒的仿佛要把这天空和马车里的靓仔一劈为二。南城门内则一片宁静祥和,繁华盛世,CLG隐隐约约感到一股力量,那股力量是在吉祥村从来没有的,那股力量透过城墙给城外的恶龙震慑的力量,保护者城墙内的人。

“嘻嘻嘻,你好,我叫FYY,你也是来南城寻求打败恶龙方法的吗?“说这话的也是位与CLG年纪相仿的后生仔。一番攀谈之后,两人来自不同村落,但却对南城的传说眼睛发光,好像不止他们两个,城门外为踏足南城内的年轻人,即使衣服口袋多么破旧干扁,地位多么卑微,仍然心中充满希望眼睛炯炯有神!

两人结伴而行,一路有说有笑进了南城,逛城就要逛这座城市最有希望的地方,这座城市以古堡论成就,谁的建筑高,谁的成就就大,两人一起去了南城南区,这做城市长老成就最多最高的地方,到了南城南区,远远的就能见到一座塔尖高耸入云的建筑,FYY看出了CLG的眼神撇的地方,一直都比CLG有准备的他来之前做了好多南城功课,慢悠悠的问到“好奇那座成就?”它可是王国著名的屠龙勇士马大鹅的成就,虽然成就吸取了一大批年轻人的诚恳,但仍然是所有学者的向往之地!因为只有进入里面或者类似这样的城堡,才会感觉到知识的用处!“CLG被迷住了,脚步随着眼睛走到了马大鹅的古堡前,进城前感受到的力量在这里更浓烈了!他知道自己没办法在全国学者的竞争中赢得比赛进入里面!于是把大鹅古堡画进了脑子里,用来激励自己!FYY看到CLG这幅失魂的样子,把他从遐想中喊了回来,”在想什么呢?“,CLG开始叽里呱啦描绘着:

# 导入包

import matplotlib.pyplot as plt

from matplotlib.patches import Rectangle

import numpy as np

# 绘图

fig,ax = plt.subplots(subplot_kw={'aspect':'equal'})#plt.subplots()函数关键字参数按比例

x1=np.arange(1,2.6,0.1)#arange函数中的参数起点终点步长

y1=x1+2#起点加2,其他参数不变

x2=np.arange(2.5,4.1,0.1)#arange函数中的参数起点终点步长

y2=-x2+7#起点加7,其他参数不变

x3=np.linspace(-10,10,100)

y3=x3*x3

# 设置背景颜色

rectangle=ax.patch

# 通过ax.patch语句来获得rectangle的实例,Rectangle(xy=(0,0),width=1,height=1)

rectangle.set_facecolor('lightskyblue') # 设置坐标轴实例ax的背景色

# 房子(Rectangle矩阵函数绘制第一个矩形,,矩形左下角顶点坐标(1,0),矩形宽度和高度都是3,,矩形内部填充颜色为白色w,轮廓颜色为棕色,参数为坐标宽度高度颜色设置,其他可选参数https://www.mathworks.com/help/matlab/ref/rectangle.html)

rectangle1=Rectangle((1,0),3,3,facecolor='w',edgecolor='rosybrown')

# 门(与上面矩形绘制同理,但是添加了hatch='|||',使房子的门产生木质纹理的展示效果)

rectangle2= Rectangle((1.5,0),1,1.5,facecolor='w',edgecolor='rosybrown',hatch='|||')

# 窗(生成窗户外边框和设置参数,)

rectangle3=Rectangle((1.9,1.7),0.6,0.6,facecolor='w',edgecolor='rosybrown')

# 窗口线(通过plot()实例方法,向第三个矩形中添加了窗户的窗框,也即是窗户里面的十字形)

ax.plot([2.2,2.2],[1.7,2.3],color='rosybrown')

ax.plot([1.9,2.5],[2.0,2.0],color='rosybrown')

# 屋顶线(绘制房顶三角形区域,[1,2.5,4],[3,4.5,3]分别是x,y的坐标值,也即三个坐标点(1,3)(2.5,4.5)(4,3))

ax.plot([1,2.5,4],[3,4.5,3],color='rosybrown')

#矩阵合集

rectangle_list=[rectangle1,rectangle2,rectangle3]

# 屋顶填充颜色(ax.fill_between函数实现部分填充,ax.fill_between其他可选参数https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.fill_between.html)

ax.fill_between(x1,3,y1,color='b',interpolate=True)

ax.fill_between(x2,3,y2,color='b',interpolate=True)

# 利用for循环,向画布中添加图像

for rect in rectangle_list:

ax.add_patch(rect)

ax.axis([0,5,0,6])

#展示

plt.show()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值