문제

대화식 애플릿을 코딩하고 있습니다 피콜로 가우스 곡선을 포함해야합니다 (일명 정규 분포 차트) 그 안에.

나는 모든 종류의 Java 구현으로 충분할 것이라고 생각하지만 찾을 수는 없습니다. 이상적으로는 일련의 값을 전달하고 패널, 이미지 개체 또는 애플릿에 내장 될 수있는 모든 것을 패널에 그려두고 싶습니다.

내 손이 더러워지기 전에 직접 코딩하기 전에, 아무도 작동하는 코드를 알고 있습니까?

다른 언어로의 구현은 Java에게 쉽게 휴대 할 수있는 한 환영받습니다.

도움이 되었습니까?

해결책

그것이 작동하는지 모르겠지만 Google은 던졌습니다. 이 코드는 가우스 분포를 플로팅합니다.

이 프로젝트의 홈페이지는 다음과 같습니다 여기.

Piccolo가 당신을 위해 플로팅을 수행하지 않으면 아마도 사용할 것입니다. JFREECHART 실제 플로팅의 경우 널리 지원되고 매우 유능하기 때문입니다. (나는 피콜로에 익숙하지 않다)

다른 팁

편집 :처럼 보입니다 아파치 커먼즈 수학 도서관 통계 섹션이 있습니다. 구체적으로, 공통의 전체 패키지 분포. 기본 통계를 기억할 수 없기 때문에 수학 사람들이 있기를 바랍니다. 여기 라이브러리를 사용하려는 시도가 있습니다. 나는 여기에 슬라이딩 창이 있고 그 값 사이의 p를 계산합니다. 이것으로부터 PDF를 얻는 진짜 방법은 무엇입니까? 그들은 CDF 기능 만 가지고 있습니다.

public void testNormalDist() throws MathException {
    DistributionFactory f = DistributionFactory.newInstance();
    NormalDistribution n = f.createNormalDistribution(0.0d, 1.0d);
    double lastx = Double.NEGATIVE_INFINITY;
    double nextx = Double.NEGATIVE_INFINITY;
    for (int i=-100; i < 100; i++) {
        nextx = i / 100d;
        System.out.println(n.cumulativeProbability(lastx, nextx));
        lastx = nextx;
    }
}

그래프의 확률 밀도 함수를 원한다고 가정합니다. 그만큼 방정식은 위키 백과에 있습니다, 나는 여기에 수학 마크 업을 포함시키는 방법을 모르기 때문에. p (x)를 y 값으로 사용하고 x를 x 값으로 사용하면 2D 그래프를 쉽게 얻을 수 있습니다.

당신은 보셨습니까? Java의 Mathtools?

좋아요, 이건 어때요 ... X 포인트 배열을 제공합니다 (물론 각 픽셀 위치를 이미지 너비로 나누어 X 픽셀을 변환 할 수 있음). 분포 곡선 (다시 정규화 계수를 곱). 이것은 평균 0이고 표준 편차가 1 인 기본 경우입니다.

public double[] normalDistBasic(double[] xarray, double mu) {
    double[] yarray = new double[xarray.length];
    double rad2pi = 2.50662827d;
    for (int off = 0; off < yarray.length; off++) {
        double x = xarray[off];
        double ss = -1d * x * x / 2d;
        yarray[off] = (-1f / rad2pi) * Math.exp(ss);
    }
    return yarray;
}

인터넷에서 찾을 수없는 경우 임의의 평균 및 표준 편차를 취하는 것을 구현하는 것은 매우 쉽습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top