首页 > 解决方案 > 如何用 ggplot 绘制向量范数?

问题描述

考虑一个二维向量 v=(v1, v2)。我试图在向量的 norm1(绝对值之和)等于 1 的情况下绘制对 (v1, v2) 的值。

所以如果 norm(v)= abs(v1)+abs(v2)=1,这意味着 v2 = +/- (1-abs(v1))。我正在使用 ggplot2 创建此图:

library(ggplot2)
b1 = seq(-1, 1, 0.01)
fb1 = c(b1, sort(b1, decreasing =TRUE))
lb2 = c(1 - abs(b1), -(1-abs(b1)))
ggplot_data = data.frame(x=fb1, y=lb2)
ggplot(ggplot_data, aes(x = x, y = y)) + geom_line()

在此处输入图像描述

这是生成的图像。我不知道我在做什么错,因为要绘制的点对定义正确

标签: rggplot2

解决方案


你可以使用geom_path().

ggplot(ggplot_data, aes(x = x, y = y)) + geom_path()

屈服

在此处输入图像描述


推荐阅读