📄 charttest4.xml
字号:
<?xml version="1.0"?><Application> <Window caption="Chart Test" width="500" height="400" centered="true"/> <Resources> <Package name="Charting"/> <Script><![CDATA[function ChartTest4() { var win = application.getWindow(); var cb = new BiComboBox(["line", "column", "stackedcolumn", "percentagestackedcolumn", "bar", "stackedbar", "percentagestackedbar", "pie", "grid"]); win.add(cb); cb.setLocation(10, 10); cb.setWidth(150); cb.findString("line").setSelected(true); var d0 = new Date; var oDoc = BiXmlLoader.load( "chart.xml" ); if (oDoc.parseError.errorCode != 0) { alert("Error parsing chart XML file" + "\n\nurl: " + oDoc.parseError.url + "\nreason: " + oDoc.parseError.reason + "srcText: " + oDoc.parseError.srcText + "\nline: " + oDoc.parseError.line); return; } // remove existing categories var cats = oDoc.getElementsByTagName("Category"); for (var i = cats.length - 1; i >= 0; i--) cats[i].parentNode.removeChild(cats[i]); // remove existing series var ss = oDoc.getElementsByTagName("Series"); for (var i = ss.length - 1; i >= 0; i--) ss[i].parentNode.removeChild(ss[i]); var N = 101; // add N categories var categoriesEl = oDoc.selectSingleNode("//Graph/Data/Categories"); for (var i = 0; i < N; i++) { var categoryEl = oDoc.createElement("Category"); categoryEl.setAttribute("Id", "Category" + i); var titleEl = oDoc.createElement("Title"); titleEl.appendChild(oDoc.createTextNode(String(i * 5))); categoryEl.appendChild(titleEl); categoriesEl.appendChild(categoryEl); } // add N values to a series var seriesGroupEl = oDoc.selectSingleNode("//Graph/Data/SeriesGroup"); var seriesEl = oDoc.createElement("Series"); seriesEl.setAttribute("Id", "Series0"); var titleEl = oDoc.createElement("Title"); titleEl.appendChild(oDoc.createTextNode("Series 0")); seriesEl.appendChild(titleEl); var valuesEl = oDoc.createElement("Values"); for (var i = 0; i < N; i++) { var valueEl = oDoc.createElement("Value"); valueEl.setAttribute("Category", "Category" + i); //valueEl.appendChild( oDoc.createTextNode(Math.random().toString()) ); valueEl.appendChild( oDoc.createTextNode((1 * Math.sin( i * 5 * Math.PI / 180) + 0).toString()) ); valuesEl.appendChild(valueEl); } seriesEl.appendChild(valuesEl); seriesGroupEl.appendChild(seriesEl); // remove invalid chart elements var chartsEl = oDoc.selectSingleNode("//Graph/Presentation/Charts"); while (chartsEl.hasChildNodes()) chartsEl.removeChild(chartsEl.lastChild); var chart = BiGraph.fromXmlDocument(oDoc); chart.getChartPresentation("Series0").setMarkerVisible(false); //chart.getChartPresentation("Series0").setStrokeColor("blue"); //chart.getChartPresentation("Series0").setFillColor("blue"); chart.getCategoryAxis().setShowLabels(true); chart.getCategoryAxis().setShowMinorTicks(false); chart.getCategoryAxis().setMajorTickInterval(10); chart.getValueAxis().setShowLabels(true); //chart.getValueAxis().setMinimum(0); //chart.getValueAxis().setMaximum(1); chart.getGridLines().setShowMajorCategory(false); chart.getGridLines().setShowMinorCategory(false); chart.getCategoryAxis().setAxisBetweenCategories(false); win.add(chart); chart.update(); chart.setLocation(10, cb.getHeight() + 20); chart.setRight(10); chart.setBottom(10); //chart.setBorder( new BiBorder(1, "solid", "black") ); //chart.setBackColor("white"); win.setCaption(win.getCaption() + " [" + (new Date - d0) + "ms]"); cb.addEventListener("change", function (e) { var s = win.getCaption(); var d0 = new Date; chart.setChartType(cb.getSelectedItem().getText()); chart.update(); var t = new Date - d0; win.setCaption( s.replace(/\[.+\]/, "[" + t + "]") ); }, this); oDoc = null;}ChartTest4.main = function () { new ChartTest4; }; ]]></Script> </Resources></Application>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -