关于本站
1、基于Django+Bootstrap开发
2、主要发表本人的技术原创博客
3、本站于 2015-12-01 开始建站
2月14号,你是“情人劫”? 还是“情人节”?
不怕,我这有学霸式的表白禁术——用Excel绘制心形图。
先看看效果图,勾引一下你。
这个利用鼎鼎有名的心形参数方程来绘制图表。
看不懂没关系,n是该参数方程的参数,θ是变量,范围区间是[-2π, 2π]。
通过该方程计算得到(x, y)的坐标。
我们可以取多个θ的数值,得到多个坐标点,通过这些坐标点画散点图。
θ的区间是[-2π, 2π],那么值域是4π。
我们先把θ的取值区间划分200等份。那么每一份的值是4π/200 = 0.02π
我们先在Excel建立θ的数值表。为了展示更清楚,我将中间一些行隐藏。如下图所示:
B2单元格写n参数值,这里先写1即可。
A4单元格写步长,0-200。当然不是一个一个填写。A4写0,A5写1,选择A4和A5下拉填充。或者A4单元格写公式 =row(A1)-1 再下拉填充。
一个200+1个,多1个是形成闭环图形。
有了θ之后,再计算nθ/2。如下图,在C4单元格写入公式 =$B$1*B4/2,下拉填充。
nθ/2计算完成之后,就可以计算x和y,根据心形参数方程。x和y的值计算如下:
x = cos(nθ/2)
y = sin(nθ/2) + cos(nθ/2)^2^(1/3)
计算y值中,将2/3次方拆成两个。先计算2次方,再继续1/3次方。若直接计算2/3次方,Excel公式计算会出错。
通过上面步骤计算,我们可以得到200+1个散点坐标。
若有隐藏单元格,先取消隐藏(因为若不取消隐藏的话,会影响图表的形状)。
再选中单元格D4:E204,再插入带平滑线的散点图。
插入之后,就成功了。此时应有妹纸在旁观,哈哈~
上面已经完成学霸式表白禁术。
当然你还可以画成更加细腻。删掉网格线、坐标轴、图例。再调整图表宽高和图表颜色。
还可以将n设置为99。99是200除以2再减去1得到的。图表会变成如下形状。
这个形状还不是我一开始勾引大家使用的形状。这个也很漂亮。
开篇用的形状是将θ分成800等份。800等份,每份是4π/800=0.005π。
n设置为800/2-1 得到的形状。
θ拆分的份数也多,得到的形状越细腻。
我的文件上传到网盘,可下载研究。http://pan.baidu.com/s/1bpkpBfL