2009-12-06 4 views
6

Я знаю, что существует много сравнений библиотек java-графики, но я не нахожу то, что мне нужно. Мне просто нужен простой в обращении инструментальный набор, который создает образы рассеянности из набора координат. Нет графического интерфейса, без взаимодействия, без фантазии дисплея, просто базовая система координат XY с точками.Java: Действительно простая утилита для разброса данных

Это не будет конец света, чтобы использовать что-то, что предлагает гораздо больше функциональности, чем мне нужно, но я бы предпочел. Вы знаете что-то вроде того, что я ищу?

+0

вы должны попробовать это, она не является 100% точным, но должны сделать работу [простой Разброс-сюжет] (https://code.google.com/p/ simple-scatter-plot /) – user1406062

ответ

2

Вам использовать пользовательский JPanel, чтобы сделать свои данные (не тестировался, но вы получите идею ...)

private List<Point2D> data=(...); 

JPanel pane=new JPanel() 
{ 
protected paintComponent(Graphics2D g) 
{ 
super.paintComponent(g); 
int minx=(...),miny=(...),maxx=(...),maxy=(...); 
for(Point2D p: data) 
{ 
int x=((p.getX()-minx)/(maxx-minx))*this.getWidth(); 
int y=((p.getY()-miny)/(maxy-miny))*this.getHeight(); 
g.drawLine(x-5,y,x+5,y); 
g.drawLine(x,y-5,x,y+5); 
} 
} 
pane.setOpaque(true); 
(...) 
anotherComponent.add(pane); 
(...) 
} 
2

Я посмотрел на то, что существует, и понял, что jcckit технически довольно хорошо, но просто не хватает простой обертки вокруг него, чтобы сделать его простым в использовании.

Так что я разветвил его и сделал действительно простую обертку. Вот как использовать:

import static easyjcckit.QuickPlot.*; 

double[] xaxis = new double[]{0,1,2,3,4,5}; 
double[] yvalues = new double[]{0,1,4,9,16,25}; 
scatter(xaxis, yvalues); // create a plot using xaxis and yvalues 
double[] yvalues2 = new double[]{0,1,2,3,4,5}; 
addScatter(xaxis, yvalues2); // create a second plot on top of first 

System.out.println("Press enter to exit"); 
System.in.read(); 

Как и разброс участков, вы можете свободно добавлять строки в одних и тех же осей, если вы хотите с помощью «addPlot» и «сюжет».

Вот код: https://bitbucket.org/hughperkins/easyjcckit

+0

Можно ли установить разные цвета на разных графиках/наборах? –

1

Также вы можете проверить Simple Java Plot. Минимальный пример (без вариантов):

Plot plot = Plot.plot(null). 
    // setting data 
    series(null, Plot.data(). 
     xy(1, 2). 
     xy(3, 4), null); 
// saving sample_minimal.png 
plot.save("sample_minimal", "png"); 

 Смежные вопросы

  • Нет связанных вопросов^_^