京公网安备 11010802034615号
经营许可证编号:京B2-20210330
教程贴:如何用方程式写春联_数据分析师
如何在春节坐在电脑前也很有过年气氛?尤其是面对着家里还是 Windows XP 的桌电。我翻到了一篇文章,介绍 GrafEq 这套付费但可无限试用且只支持到 Windows XP 和 OS 9.2 的古董级数学绘图软件。
我们这就拿它来做一点实验。
首先打入 x^2+y^2<25。会看到一个半径为 5 的圆
若想要这个圆方一点,可以打 x^6+y^6<25,不过这就太方了
x^4+y^4<25 倒是刚刚好
现在我想在它身上挖个洞,于是想到要在不等式左边减掉一个在原点值很大、但是出原点就迅速变小的函数。
例如 1/(x^4+y^4) 就是这样的函数,它在 x, y 很小的时候有很小的分母、所以函数值很大,但是 x, y 变大之后四次方会让分母变大得很快,所以函数值就变得微不足道地小。
现在 x^4+y^4+1/(x^4+y^4)<25 的图案长这样。
能不能让洞大一些呢?当然可以,把分子的 1 改成 100 就好
x^4+y^4+100/(x^4+y^4)<25 的图案长这样
能不能让洞只出现在上半部呢?当然也可以,将分母的 y 用 2y-2 取代
现在的式子是:x^4+y^4+100/(x^4+ (2y-2)^4)<25

不过看起来有点勉强啊,毕竟 100/(x^4+ (2y-2)^4) 在左上角和右上角的地方降得不够快,和正在变大的 x^4+y^4 相加之后,函数值比 25 小的地方显得有点细(快不见得右上角和左上角)。我们可以从下面这张图看到在该函数在 x=y 这条线上的行为,因为我们要看沿着斜 45 度角这条线上的笔画粗细。
我们现在考虑的是 f (x,y)= x^4+y^4+100/(x^4+ (2y-2)^4) 这个函数,要把它画出来需要三维空间,这里却只有两维,不得已只好取函数在 x=y 这条线上面的样子,于是上图的纵坐标代表 f(x,y)= x^4+y^4+100/(x^4+ (2y-2)^4) 函数的值,横坐标则是 x=y 这条线,往左是原图的左下角往右是原图的右上角,至于浅浅那条横线代表不等号右边的 25,于是在该线下方的函数值对应到被涂黑的部分,该线上方的函数值对应到留白的部分。
当然,缩放过了,你知道如何用 GrafEq 画出这张图吗?
我的答案是
(-5y+2(x/4)^4+100/((x/4)^4+ (2(x/4)-2)^4))(-5y+25)=0
为了让那个地方粗一些,我们决定在分母动手脚,让它在左上角和右上角不要增加太快,方法是让 y=1 附近的分母变大,例如把分母 x^4+ (2y-2)^4 再加上 (2y-1)^2,这会让 x=y 上的行为变成
(-5y+2(x/4)^4+100/((x/4)^4+ (2(x/4)-2)^4+ (2(x/4)-1)^2))(-5y+25)=0
而 x^4+y^4+100/(x^4+ (2y-2)^4+ (2y-1)^2)<25 则变成
可爱多了,忍不住想再戳第二个洞
x^4+y^4+100/(x^4+ (2y-2)^4+ (2y-1)^2) +100/(x^4+ (2y+2)^4+ (2y+1)^2)<25
一个「日字」就完成了
可以再画其他笔画吗?没有问题,只要调整 x, y 前面的系数与常数,我们可以在任何位置画上任意长度
例如 -1/((y+3)^4+ (x/15)^4)-1/((y+4)^4+ (x/15)^4)-1/((y+5)^4+ (x/15)^4)<-100
(知道这三条分别对应到哪一项吗?)
将上式的左边放到还没挖洞的函数里
x^4+y^4-1/((y+3)^4+ (x/15)^4)-1/((y+4)^4+ (x/15)^4)-1/((y+5)^4+ (x/15)^4)<25
会发现这三条的粗细和长度都变了,离原点越远也就是越下面的笔画就会越细。这是因为离原点越远的话x^4+y^4 就越大,所以扣掉 XX 分之一之后就越容易超出 25(不等式右式给的边界),笔画就缩水了。
话又说回来,这像不像旭日东升呢?
还是说象形字看起来比较有感觉?
x^4+y^4+100/(x^4+ (2y-2)^4+ (2y-1)^2) +100/(x^4+ (2y+2)^4+ (2y+1)^2)-1/((y+3)^4+ (x/15)^4)-1/((y+4)^4+ (x/15)^4)-1/((y+5)^4+ (x/15)^4)<25
抑或是 x=0 的截面比较有启发性?
(-50x+y^4+100/((2y-2)^4+ (2y-1)^2) +100/((2y+2)^4+
(2y+1)^2)-1/((y+3)^4)-1/((y+4)^4)-1/((y+5)^4))(-50x+25)=0
下一题:要怎么画出斜的笔画?毕竟调常数只会平移图形,调整系数顶多让矮胖的变瘦高的,那要怎么调整「角度」呢?
这就要用到所谓「线性变换」的概念了,例如将
-1/(4(x+4)^4+ ((y+1)/5)^4)<-100
套用变换「 x ⟼ x+y 、 y ⟼ x-y 」会得到
-1/(4(x+y+4)^4+ ((x-y+1)/5)^4)<-100
那么再下一个问题:要怎么画出弯的笔画?
这可是再多线性变换都做不到的事,穷途末路的我们回想起圆弧是弯的 (x-19)^2+ (y+12)^2=400 ,所以我们只要设定「到圆弧的距离够小」,或者说「到圆心的距离界在某两个数中间」就好了吧!((x-19)^2+ (y+12)^2-400)^2<100
不过等等,这笔一画下去可就是整个圆了,能不能只取其中一段呢?
我想只靠一个圆大概不够,那你有没有试第二个?
((x-4)^2+ (y+5)^2-13)((x-19)^2+ (y+12)^2-400)=0
也许设定「到两个圆的距离都够小」会有意外收获
((x-4)^2+ (y+5)^2-13)^2+ ((x-19)^2+ (y+12)^2-400)^2<100
唉呀,为了把这笔画整合到本来的图形里,我们需要把「够靠近零」的部分放到分母,变成一个「够大」的条件
-100/(((x-4)^2+ (y+5)^2-13)^2+ ((x-19)^2+ (y+12)^2-400)^2)<-1
(需要看看它的样子吗?我猜是不用。)
不过它其实还是有点脆弱,根据努力尝试的结果,我建议狠下心来将分子分母同时平方四次,这样该大的才会大 ,该小的才会小。
-100^16/(((x-4)^2+ (y+5)^2-13)^2+ ((x-19)^2+ (y+12)^2-400)^2)^16<-100
(这个图形和前一个一样吗?)(如果不,那它为什么和前一个那么像?)
最后将所有这些东西通通加在一起
x^4+y^4+100/(x^4+ (2y-2)^4+ (2y-1)^2) +100/(x^4+ (2y+2)^4+ (2y+1)^2)-1/((y+3)^4+ (x/15)^4)-1/((y+4)^4+ (x/15)^4)-1/((y+5)^4+ (x/15)^4)-1/(4(x+y+4)^4+ ((x-y+1)/5)^4)-100^16/(((x-4)^2+ (y+5)^2-13)^2+ ((x-19)^2+ (y+12)^2-400)^2)^16<25
就得到了:
至于红色的春联纸怎么画呢?我希望字出现在正中间,所以应该要有些平移,我希望它够尖,所以指数部分应该够大,我希望它是 45 度的,所以需要线性变换,就决定是你了 (x+y+2)^100+ (x-y-2)^100<7^100
这就是结果啦
最后,就来道规规矩矩的练习题让大家试试吧:
祝福各位新年快乐!
编按:如果以上这串你有看没有懂没关系,为了犒赏你能够阅读这篇文章到底,把以下式子贴入 google 搜索,会有意想不到的惊喜哦!
x^4+y^4+100/(x^4+ (2y-2)^4+ (2y-1)^2) +100/(x^4+ (2y+2)^4+ (2y+1)^2)-1/((y+3)^4+ (x/15)^4)-1/((y+4)^4+ (x/15)^4)-1/((y+5)^4+ (x/15)^4)-1/(4(x+y+4)^4+ ((x-y+1)/5)^4)-100^16/(((x-4)^2+ (y+5)^2-13)^2+ ((x-19)^2+ (y+12)^2-400)^2)^16-25
关于GrafEq
古董级函数作图软件—— GrafEq 。这个软件只有 2M 大小,它的功能就只有一个:作出形如 x2 + y2 = 1 的二元等式或者不等式的图像。令人惊叹的是,这个软件的图像绘制能力异常强大, Mathematica 等大型专业数学软件完全不是它的对手。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
【核心关键词】运营、证书、金融、客户、产品、软件、销售额、量化、科技、数据分析、金融行业、证券类软件、业务流程、金融机 ...
2026-06-22在企业方案选型、产品迭代评审、供应商筛选、运营效果复盘等决策场景中,单一指标的优劣判断往往无法支撑科学决策。一套转化效果 ...
2026-06-22 很多数据分析师掌握了Excel函数、会写SQL查询,但当被问到“数据从哪里来”“数据加工有哪些步骤”“如何使用分析工具连接数 ...
2026-06-22【核心关键词】软件、洞察力、大数据、产品、经验、硬件、流量、创新、决策、数据安全、网络安全、数据分析、决策制定、数据挖 ...
2026-06-18在方案选型、效果复盘、产品评估、供应商筛选等各类业务决策场景中,仅凭单一指标下结论往往会陷入 “以偏概全” 的误区。多维度 ...
2026-06-18 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-06-18在数据分析、用户运营与业务增长的工作体系中,漏斗拆解是最基础也最高频的问题定位方法。很多业务场景下,我们只能看到最终的转 ...
2026-06-17在数据库开发、数据清洗与报表统计场景中,数值类型转换为日期是高频刚需操作。业务系统常以 Unix 时间戳、整型日期(如20240617 ...
2026-06-17 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-06-17【核心关键词】数据库、电商、知识、产品、数据产品、监管业务、产品经理、业务系统、用户行为分析、用户分析、数据分析、电商 ...
2026-06-16在 Python 动态类型与面向对象的编程体系中,变量定义与类实例化是构建代码逻辑的两大核心基石。变量是数据存储、传递与运算的基 ...
2026-06-16 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据和表结构数据有什么区别”“数据类型误判会引发哪些分析错误” ...
2026-06-16在 MySQL 查询性能优化体系中,索引是降低查询耗时、提升数据库吞吐的核心手段。其中联合索引与覆盖索引是实际开发中最高频的两 ...
2026-06-15在数据仓库建设与商业智能分析体系中,维度建模是应用最广泛的建模方法论,而事实表与维度表是维度建模的两大核心构件,共同构成 ...
2026-06-15 很多数据分析师能熟练计算指标,但当被问到“这家企业的核心业务目标是什么”“如何把模糊的战略目标拆解为可量化的指标”“ ...
2026-06-15在数据分析、业务监控、运营复盘等场景中,列值趋势计算是核心需求之一。无论是分析销售额的月度增长、用户活跃的变化趋势、库存 ...
2026-06-12在数字经济深度渗透的当下,消费者的购买行为已从过去的 “被动接受” 转变为 “主动决策”。流量红利消退、获客成本攀升、用户 ...
2026-06-12CDA三级认证是三个级别中的塔尖,全面考察数据战略、团队领导和复杂项目的综合能力。它所对应的《敏捷数据挖掘》教材,不再局限 ...
2026-06-12在游戏产业的商业逻辑中,付费玩家是支撑游戏生存与发展的核心支柱。行业普遍遵循 “二八定律”:20% 的付费玩家贡献了游戏 80% ...
2026-06-11【核心关键词】企业、定位、传统、产品、互联网、可视化、业务侧、数字化、结构化、数据分析、传统制造业、市场状态、发展空间 ...
2026-06-11