|
 |
 |
 |
Q & A ...
°Ô½ÃÆÇ (Visualization)
|
|
|
¡Ø ¾È³çÇϽʴϱî..?
ÀúÈñ KSTECÀÇ Á¦Ç°À̳ª ¼ºñ½º¿¡ ´ëÇØ ±Ã±ÝÇϽŠÁ¡À̳ª ±â¼úÁö¿øÀ» ¿øÇϽô °í°´´ÔÀº ȸ»ç¸í,
ºÎ¼¸í, ¼º¸í, »ç¿ëÁ¦Ç°¸í, Á¦Ç° VERSIONÀ» ¸í½ÃÇÏ¿© Áֽñ⠹ٶø´Ï´Ù.
¡Ø °Ô½ÃÇϽг»¿ë¿¡ ´ëÇØ¼´Â ½Å¼ÓÇÏ°Ô ´äº¯ÇØ µå¸®°Ú½À´Ï´Ù.
¡Ø ÇØ´çµÇ´Â Á¦Ç°±ºÀ» ¼±ÅÃÇϽŠÈÄ ÇÏ°í ½ÍÀ¸½Å ¸»¾¸À» Àû¾î ÁֽʽÿÀ.
|
|
|
Á¦ ¸ñ |
[RE] chart scroll |
|
ÀÛ¼ºÀÚ |
ÀÌ¿Á°æ |
ÀÛ¼ºÀÏ |
2001-12-17 |
Á¶È¸¼ö |
800 ȸ |
|
÷ºÎÆÄÀÏ |
÷ºÎµÈ ÆÄÀϾøÀ½.
|
|
¾È³çÇϼ¼¿ä?
´ÔÀÇ °æ¿ì´Â Views 3.x version¿¡¼ chart library¸¦ »ç¿ëÇϽðí Àִµí Çϱº¿ä... ¸Â³ª¿ä?
IlvChartContainerRectangleÀº ³»ºÎ¿¡ IlvChartContainer¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù. IlvChartContainerÀÇ X/Y Axis¿¡ º¯°æÀÌ ÀϾ¸é ÀÚµ¿À¸·Î updateScaleLabels ¶ó´Â virtual functionÀ» È£ÃâÇÏ°Ô µÇ¾î ÀÖ½À´Ï´Ù. À̶§ ÀûÀýÇÑ X/Y Axis Á¤º¸¸¦ IlvChartContainer¿¡°Ô Áּž߸¸ ¿øÇÏ´Â ±â´ÉÀ» ±¸ÇöÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù. Á¦°¡ º¸±â¿£ ´ÔÀÌ ¿øÇϽô ÇüÅ´ë·Î IlvChartContainerÀÇ subclassingÀÌ ÇÊ¿äÇѵí ÇÕ´Ï´Ù. ¿¹¸¦µé¸é,
#define MIN_Y_STEPS 5 // Y AxisÀÇ °¹¼ö #define LABEL_NUM 2 // X AxisÀÇ °¹¼ö
IlvUShort SubChartContainer::computeScaleLabels(char** labels) const { int rowCt = _sheet->rows(); IlvSheetEx mySheet(_sheet); IlvFloat day, time, interval=(getXMax() - getXMin()) / LABEL_NUM; IlvFloat xmin = getShownXMin(); IlvFloat xmax = getShownXMax(); IlvFloat shownInterval = (xmax - xmin) / LABEL_NUM;
for (IlvUShort i=0; i { if (i==0) { labels[0] = new char[20]; sprintf(labels[0], \"%s\", mySheet.getLabel(0, 1)); }
if (i==(rowCt-1)) { labels[1] = new char[20]; sprintf(labels[1], \"%s\", mySheet.getLabel(0, rowCt-1)); } } return (IlvUShort)LABEL_NUM; }
void SubChartContainer::updateScaleLabels(IlvPosition mask) const { if ((mask & IlvBottom) && getScale(IlvBottom)) { int rowCt = _sheet->rows() - 1;
char* labels[2]; IlvUShort count = computeScaleLabels(labels);
getScale(IlvBottom)->setSteps(2); getScale(IlvBottom)->setSubSteps(rowCt - 1); IlvFloat xmax = getShownXMax(); if (xmax == getShownXMin()) xmax += (IlvFloat)1; getScale(IlvBottom)->setLabels(count, getShownXMin(), xmax, \"%.f\"); getScale(IlvBottom)->setLabel(0, labels[0]); getScale(IlvBottom)->setLabel(1, labels[1]);
for (IlvUShort i = 0; i < count; i++) delete labels[i]; }
if ((mask & IlvLeft) && getScale(IlvLeft)) { IlvFloat shownMin, shownMax; getShownYValues(IlvLeft, shownMin, shownMax); getScale(IlvLeft)->setLabels(MIN_Y_STEPS, shownMin, shownMax, \"%.f\"); } IlvChartContainer::updateScaleLabels((IlvPosition)(mask & ~IlvBottom)); }
ÀÌ·±½ÄÀ¸·Î SubclassingÀ» ÇϽŠÈÄ,
IlvRect size(10, 50, 680, 390), chartsRect(0, 20, 680, 370); IlvChartContainerRectangle* chartCtRect = new IlvChartContainerRectangle(getDisplay(), size, chartsRect, IlvPoint(0,0), IlvVertical, (IlvPosition)(IlvBottomLeft), IlvFalse); // Create ChartContainer ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SubChartContainer* chartCt = new SubChartContainer(container, size, chartsRect, cpSheet[page], IlvPoint(0,0), IlvHorizontal, (IlvPosition)(IlvBottomLeft), IlvFalse, IlvTrue); chartCt->setScaleFormat((IlvPosition)(IlvLeft), \"%.f\"); chartCt->fixOrigin(IlvBottom, 400); chartCt->fixOrigin(IlvLeft, size.left()); //0); chartCt->fixOrigin(IlvRight, size.right()); //700); chartCt->hideScrollBar((IlvOrientation)IlvVertical, IlvTrue);
// Set attachment for ChartContainer IlvGraphic* handle = chartCt->getChartsHandle(); IlvSetAttachment(handle, IlvTop, IlvFixedAttach, 30); IlvSetAttachment(handle, IlvBottom, IlvFixedAttach); IlvSetAttachment(handle, IlvLeft, IlvFixedAttach); IlvSetAttachment(handle, IlvRight, IlvFixedAttach); IlvSetAttachment(handle, IlvVertical, IlvElasticAttach); IlvSetAttachment(handle, IlvHorizontal, IlvElasticAttach);
container->addObject(chartCtRect, IlvTrue); chartCtRect->setChartContainer(chartCt);
// Create Charts with min/max YScale ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ int minYScale = getMinYScale(cpSheet[page], 1); int maxYScale = getMaxYScale(cpSheet[page], 1); createChart(chartCt, cpSheet[page], 0, minYScale, maxYScale, dClass);
ÀÌó·³ ÀÌ¿ëÇÏ½Ã¸é µË´Ï´Ù. ±×·³. |
|
|
|
|
|
°ü·Ã±Û º¸±â
|
|
"[RE] chart scroll"¿Í(°ú) °ü·ÃµÈ ±ÛÀÌ
1°Ç ÀÖ½À´Ï´Ù. |
 |
chart scroll
|
¹ÚÁ¤È¯ |
2001-12-13 |
 |
[RE] chart scroll
|
ÀÌ¿Á°æ |
2001-12-17 |
|
|
|
|
|
|