-2
我使用Google可視化運動圖來顯示不同的報告。一個報告在每個文件中顯示可執行的代碼行與警告。以下是圖表的樣子。 x軸表示eloc,y軸表示每個文件中的警告。加載圖表時,您可以看到除了一個文件外,所有文件都用藍色球表示,並且顯示爲紅色的球。那是什麼意思?是一個錯誤?我試圖找到解釋,但沒有運氣。Google可視化 - 運動圖
以下是我的代碼:
public class DashboardWidget
{
private HorizontalPanel containerPanel=null;
private DataTable data=null;
public DashboardWidget()
{
containerPanel = new HorizontalPanel();
}
public HorizontalPanel getContainerPanel()
{
SQLRunnerAsync service = (SQLRunnerAsync) GWT.create(SQLRunner.class);
AsyncCallback<ArrayList<String[]>> callback = new AsyncCallback<ArrayList<String[]>>()
{
@Override
public void onFailure(Throwable caught)
{
}
@Override
public void onSuccess(final ArrayList<String[]> result)
{
Runnable onLoadCallback = new Runnable()
{
public void run()
{
data = DataTable.create();
data.addColumn(ColumnType.STRING, "Name");
data.addColumn(ColumnType.DATE, "Date");
data.addColumn(ColumnType.NUMBER, "Option1");
data.addColumn(ColumnType.NUMBER, "Option2");
data.addColumn(ColumnType.NUMBER, "Option3");
data.addRows(result.size());
Date date = new Date();
DateTimeFormat fmt = DateTimeFormat.getFormat("MM/dd/yyyy");
Date d1 = fmt.parse(fmt.format(date));
int i;
for(i=0;i<result.size();i++)
{
String[] temp = result.get(i);
String Name=temp[0];//name
String Option1 = temp[1];
String Option2=temp[2];
String Option3=temp[3];
data.setValue(i, 0, Name);//NAME
data.setValue(i, 1, d1);//date
data.setValue(i, 2, Integer.parseInt(Option1));
data.setValue(i, 3, Integer.parseInt(Option2));
data.setValue(i, 4, Integer.parseInt(Option13));
}
Options options = Options.create();
options.setWidth(1000);
options.setHeight(1000);
MotionChart chart = new MotionChart(data, options);
containerPanel.add(chart);
}
};
VisualizationUtils.loadVisualizationApi(onLoadCallback, MotionChart.PACKAGE);
}
};
service.getData("","","","", callback);
return containerPanel;
}
}
我想這可能是數據相關的,也許試圖告訴你一些與其他結果的區別。也許嘗試用一半的數據生成圖表,看看是否仍然顯示紅色。然後嘗試與另一半來縮小它。 –