我想知道是否有办法在 manim 中创建散点图。
有人做过吗?如果是,最好的方法是什么?
(对我来说)最好的方法是使用 .csv 文件。
假设我们有一个名为 data.csv 的文件,其中包含以下数据:
0,0
1,0
-2,3
-4,8
1,-4
3,4
该文件位于 manim-itself 文件夹中,为了能够将其包含到 manim 中,可以按如下方式完成(请记住,manim 中的坐标是 3D 的)
class CSV(GraphScene):
def construct(self):
self.setup_axes()
coords = self.return_coords_from_csv("data")
dots = VGroup(*[Dot().move_to(self.coords_to_point(coord[0],coord[1])) for coord in coords])
self.add(dots)
def return_coords_from_csv(self,file_name):
import csv
coords = []
with open(f'{file_name}.csv', 'r') as csvFile:
reader = csv.reader(csvFile)
for row in reader:
x,y = row
coord = [float(x),float(y)]
coords.append(coord)
csvFile.close()
return coords
来自reddit的想法。