我想计算二次曲线上的一个点.将它与HTML5的canvas元素一起使用.
当我quadraticCurveTo()在JavaScript中使用该函数时,我有一个源点,一个目标点和一个控制点.
我怎么能计算出创建的二次曲线上的一个点,让我们说t=0.5"只"知道这三点?
我有以下代码来计算四个控制点之间的点,以生成catmull-rom曲线:
CGPoint interpolatedPosition(CGPoint p0, CGPoint p1, CGPoint p2, CGPoint p3, float t)
{
float t3 = t * t * t;
float t2 = t * t;
float f1 = -0.5 * t3 + t2 - 0.5 * t;
float f2 = 1.5 * t3 - 2.5 * t2 + 1.0;
float f3 = -1.5 * t3 + 2.0 * t2 + 0.5 * t;
float f4 = 0.5 * t3 - 0.5 * t2;
float x = p0.x * …Run Code Online (Sandbox Code Playgroud) 如何沿着最接近平面中任意点P的三次贝塞尔曲线找到点B(t)?
我一直在尝试用ggplot 2在我的直方图上叠加一条正常曲线.
我的公式:
data <- read.csv (path...)
ggplot(data, aes(V2)) +
geom_histogram(alpha=0.3, fill='white', colour='black', binwidth=.04)
Run Code Online (Sandbox Code Playgroud)
我尝试了几件事:
+ stat_function(fun=dnorm)
Run Code Online (Sandbox Code Playgroud)
....没有改变任何事情
+ stat_density(geom = "line", colour = "red")
Run Code Online (Sandbox Code Playgroud)
...在x轴上给了我一条直线红线.
+ geom_density()
Run Code Online (Sandbox Code Playgroud)
对我不起作用,因为我想将我的频率值保持在y轴上,并且不需要密度值.
有什么建议?
提前感谢任何提示!
找到解决方案
+geom_density(aes(y=0.045*..count..), colour="black", adjust=4)
我一直在scipy.optimize.leastsq用来拟合一些数据.我想在这些估计值上得到一些置信区间,所以我查看cov_x输出但是文档很清楚这是什么以及如何从中得到我的参数的协方差矩阵.
首先,它说它是一个雅可比行列式,但在笔记中它也说" cov_x是雅各比式的雅可比近似",所以它实际上不是雅可比,而是一个使用雅可比的近似的Hessian.以下哪些陈述是正确的?
其次这句话对我来说很困惑:
该矩阵必须乘以残差方差,以得到参数估计的协方差 - 见
curve_fit.
我确实去看看curve_fit它们所处的源代码:
s_sq = (func(popt, *args)**2).sum()/(len(ydata)-len(p0))
pcov = pcov * s_sq
Run Code Online (Sandbox Code Playgroud)
这相当于乘cov_x用s_sq,但我无法找到任何参考这个公式.有人能解释为什么这个等式是正确的吗?我的直觉告诉我它应该是另一种方式,因为cov_x它应该是一个衍生物(雅可比或黑森),所以我在想:
我想要的东西cov_x * covariance(parameters) = sum of errors(residuals)在哪里sigma(parameters).
如何连接事物curve_fit正在做我所看到的例如.维基百科:http: //en.wikipedia.org/wiki/Propagation_of_uncertainty#Non-linear_combinations
我最近一直在玩帆布,并使用与这些曲线相关的方法绘制了几种形状(泪滴,花瓣,云,岩石).话虽如此,我似乎无法弄清楚这些不同曲线的用例之间的区别.
我知道三次贝塞尔曲线有2个控制点,一个起始点和一个端点,其中二次贝塞尔曲线有一个控制点,一个起点和一个端点.但是,在绘制形状时,我似乎无法轻易决定使用哪一个或何时结合使用它们.
如何知道在不同的绘制形状点使用哪种曲线?
我在飞机上有一套点.它们被划分为子集.我想围绕属于同一子集的点绘制闭合曲线,以便属于子集的点将位于曲线内部,而不属于该子集的点将位于曲线内部.因此,简单的圆形或凸包可能不起作用.
对于初学者,假设我只想在一组点附近有一条平滑的曲线(不要求它排除其他点)
任何想法如何在R?
---后来补充---
我最终看到的是这里的图形精神:https://tex.stackexchange.com/questions/1175/drawing-a-hypergraph - 虽然上下文不是超图,而是给定的点集和那些分区.
我想用css创建一个模拟波浪运动的动画.
我需要为此更改一行或div-曲线...
我熟悉的CSS规则使整个div变为半圆形或更改元素边界.
例如:
border-radius或perspective或border-top-radius...
此图片告诉你我想要什么:

你对此有经验吗?还是可能的?
提前致谢...
我在2D中有三个点,我想绘制一条穿过它们的二次贝塞尔曲线.如何计算中间控制点(x1和y1quadTo一样)?我知道大学的线性代数但需要一些简单的帮助.
如何计算中间控制点以使曲线也通过它?
我有一个使用此代码创建的数据框:
require(reshape2)
foo <- data.frame( abs( cbind(rnorm(3),rnorm(3, mean=.8),rnorm(3, mean=.9),rnorm(3, mean=1))))
qux <- data.frame( abs( cbind(rnorm(3),rnorm(3, mean=.3),rnorm(3, mean=.4),rnorm(1, mean=2))))
bar <- data.frame( abs( cbind(rnorm(3,mean=.4),rnorm(3, mean=.3),rnorm(3, mean=.9),rnorm(3, mean=1))))
colnames(foo) <- c("w","x","y","z")
colnames(qux) <- c("w","x","y","z")
colnames(bar) <- c("w","x","y","z")
rownames(foo) <- c("n","q","r")
rownames(qux) <- c("n","q","r")
rownames(bar) <- c("n","q","r")
foo <- cbind(ID=rownames(foo),foo)
bar <- cbind(ID=rownames(bar),qux)
qux <- cbind(ID=rownames(bar),qux)
foo$fn <- "foo"
qux$fn <- "qux"
bar$fn <- "bar"
alldf<-rbind(foo,qux,bar)
alldf.m <- melt(alldf)
Run Code Online (Sandbox Code Playgroud)
我想要做的是创建一个facet格式的ggplot线条曲线,所以它创建一个如下图形:

实际图形不包含向上线 - 这只是一个草图,因此线条分离是清晰的.
我当前的代码不起作用:
library(ggplot2)
p <- ggplot(data=alldf.m, aes(x=variable)) …Run Code Online (Sandbox Code Playgroud)