平滑的情节剧情

时间:2016-02-14 23:07:39

标签: python plot sympy

如果我有import java.util.Arrays; import java.util.Scanner; import java.util.Collections; public class array_PA3{ public static void main(String[] args){ int[][] hoursArray = { {2,3,3,4,5,8,8,0}, {7,4,4,3,3,4,4,0}, {3,4,3,3,3,2,2,0}, {9,4,7,7,3,4,1,0}, {3,4,3,3,6,3,8,0}, {3,4,6,3,3,4,4,0}, {3,4,8,8,3,8,4,0}, {6,5,9,9,2,7,9,0}}; int maxRow = 0; int indexRow = 0; int [] totalRow = new int[8]; for (int row = 0; row <= 7; row++) { for (int column = 0; column <= 7; column++){ totalRow[row] += hoursArray[row][column]; } System.out.println("The sum of row " + row + " is " + totalRow[row] + "."); } Arrays.sort(totalRow, Collections.reverseOrder()); } } 这样的函数我想要绘制并显示接近0,我将如何平滑图中的结果?对于我想要显示的内容,默认的采样点数量相对较小。

以下是代码:

sin(1/x)

enter image description here

from sympy import symbols, plot, sin x = symbols('x') y = sin(1/x) plot(y, (x, 0, 0.5)) 接近0时,线变得更加锯齿状,而不是“曲线”。有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:8)

您可以设置手动使用的点数:

plot(y, (x, 0.001, 0.5), adaptive=False, nb_of_points=300000)

enter image description here

注意:我希望在使用确切的问题代码时获得ZeroDivisionError(也就是说,让x从0变为某种东西),但我没有得到错误(奇怪)。我只是在使用adaptive=False, nb_of_points=300000得到错误,所以这就是我将xmin设置为非零值(0.001)。