|
Hi All,
I find that occationally when i add a graph it is drawn black, even though i call <curve>.SetColor(<red>) everytime.
This happens very rarely, but it does happen. If anyone has seen this, and know where it is coming from, please let me know.
btw - good find on that memory leak dimo_ivanov!
thanks a million.
Mike
"I bet Einstein turned himself all sorts of colors before he invented the light bulb." -- Homer J.
|
|
|
|
|
Hi all,
I would really like to see some docs on this control!
Author of this masterpiece, we are you?
Are there any bugs in it, does it work without problems, in other words, do I dare integrate it in a big application?
/Tommy
|
|
|
|
|
hey
When you move the mouse around the screen in Cursor mode, there is a definate (and rather hefty) memory leak.
Has anyone seen this? if so is there a way to doctor up the code to stop this from happening?
Please let me know. Thanks,
Mike
"I bet Einstein turned himself all sorts of colors before he invented the light bulb." -- Homer J.
|
|
|
|
|
Hi,
try to modify Prepare(HDC hdc) member function of CDCEx class, adding "::ReleaseDC(AfxGetMainWnd()->m_hWnd,hWinDC);" in the end:
void CDCEx::Prepare (HDC hdc)
{
/*.....
original code
.....*/
::ReleaseDC(AfxGetMainWnd()->m_hWnd,hWinDC);
}
|
|
|
|
|
Hi,
This Glamar.s. I need u'r Help, please see it.
Can u Chang the X-axis scale into Time and date Display
Or only Time. Otherwise please inwhich line u display
the x-axis value.
Pointout or specify the function and which line it.
i change Drawtext(); and command this function also
setdata();. There is NO result.
glamar.s
|
|
|
|
|
Hi,
//////////////////
CXGraph m_Graph;
TDataPoint m_Data[MAX_COUNT];
double db_Your_YAxis_Data;
DATE date_Your_XAxis_Data;
int m_nAxis;
.....
m_Data[i].fYVal = db_Your_YAxis_Data;
m_Data[i].fXVal = (double) date_Your_XAxis_Data;
.....
m_Graph.SetData(m_Data,MAX_COUNT,......);
m_Graph.GetXAxis(m_nAxes) .SetDisplayFmt(_T("%H:%M:%S \n %d.%m.%Y ."));
m_Graph.GetXAxis(m_nAxes) .SetDateTime(true);
//////////////////
|
|
|
|
|
Hi,
This Glamar.s. I need u'r Help, please see it.
Can u Chang the X-axis scale into Time and date Display
Or only Time. Otherwise please inwhich line u display
the x-axis value.
Pointout or specify the function and which line it.
i change Drawtext(); and command this function. There is
NO result.
glamar.s
|
|
|
|
|
I am sure that everyone has noticed that the XGraph does not re-paint correctly when in background, that is, when another window (e.g. another Dialog) is dragged-moved over the control. When this happens some parts of the chart partly disappear. When the focus is returned to the graph (for example when the user clicks on the chart, then the re-draw takes place and the problem is corrected.
This behavior has been reported before. I have even noticed, while trying to solve the problem myself, that this happens ONLY for the data-series plots - the Axis and label are not affected. However I could not find a solution.
Has anyone solved the problem ????
Warm regards
Pothitos M. Baikas
|
|
|
|
|
Switch off double buffering.
|
|
|
|
|
Yes I know. I have used the same trick my-self. However I do not feel that this is the correct way to do it. I am still looking into the issue, although it is not a top priority
|
|
|
|
|
Solution for corret re-paint:
- in method CXGraph::OnPaint call second (modified) constructor of class CMemDC,
- create constructor CMemDC(CDC* pDC, CRect wndRect) : CDC()
>> 2nd parameter wndRect contain size of client window
In example used constructor call method GetClipBox, which always set RECT components
to 0. So in the end CopatibleBitmap will be size of 0,0.
Izidor
|
|
|
|
|
I understand that you are providing the solution, however I am not sure I can follow your instructions. Would you be so kind to give the modified code for the OnPaint ?
Hope that you will find the time to help once more
Warm regards
Pothitos M. Baikas
|
|
|
|
|
I think this is what he means:
XGRAPH.cpp around line 664:
CXGraph::OnPaint
{
...
if (m_bDoubleBuffer)
{
>>> // MMM
CRect empty, client;
GetClientRect( client );
empty.SetRectEmpty();
pmdc = new CMemDC(pdc, empty, client);
instead of:
//pmdc = new CMemDC(pdc);
|
|
|
|
|
Hi,
Two document with a separate Graph view but when one view changed, the other document view are affected too.
Each document I created a new object of m_Graph using new TDataPoint, but some how they still shared the memory.
Is there a solution to this?
|
|
|
|
|
There is a bug in control.
It seems it goes in infinite loop when small numbers are used for 1 ais and large numbers for another.
Has anybody already found a solution?
Alex
|
|
|
|
|
Need to show very small numbers.
However in the bug fixes (17 Apr 2002 1.02) is mentioned that "Values greater/less 10E6/10E-6 are now automatically shown in exponential format", There is a problem with showing them.
INITIALLY numbers on the axes are NOT shown in exponential form, so you can see 0. insteed of 1.e-5.
If I change anything (it can be than set back) on the Axis tab of chart dialog just to enable Apply button and Apply “changes”, numbers appears properly.
It looks like that some members are not initiated properly. Failed to find which function should be called to fix the problem.
Any help is appreciated. Thank you in advance,
AlexM
|
|
|
|
|
I manage to use it without much problem. I had one quetion about printing. just wondering why one of my PC can print color while another is Black and white?. Both are network into same printer. Is there anything I missed out?
|
|
|
|
|
Hi there,
I try to use SetData on an X-Axis with an time format.
Exampe: Starting time is 12:30, Ending time 13:00. No date is needed. I will have about 180 datapoints which I have to plot.
I looked through the example. I dont get it.
Can someone please help me.
Thanks. Rudolf.
|
|
|
|
|
Why the warning like this happened??..
-----------------------------------------------------------------------------------------------------------
Automatically linking with XGraph10d.dll
c:\program files\microsoft visual studio\vc98\include\vector(420) : warning C4786: 'std::reverse_iterator<std::vector<unsigned char,std::allocator<unsigned="" int=""> >::const_iterator,unsigned char,std::vector<unsigned char,std::allocator<unsigned="" int=""> >
::reference const ,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const *,int>' : identifier was truncated to '255' characters in the debug information
c:\program files\microsoft visual studio\vc98\include\utility(138) : warning C4786: 'reverse_iterator<std::vector<unsigned char,std::allocator<unsigned="" int=""> >::const_iterator,unsigned char,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::re
ference const ,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const *,i' : identifier was truncated to '255' characters in the debug information
c:\program files\microsoft visual studio\vc98\include\utility(138) : while compiling class-template member function '__thiscall std::reverse_iterator<class std::vector<unsigned="" char,class="" std::allocator<unsigned="" int=""> >::const_iterator,unsign
ed char,class std::vector<unsigned char,class="" std::allocator<unsigned="" int=""> >::reference const ,class std::vector<unsigned char,class="" std::allocator<unsigned="" int=""> >::reference const *,int>::std::reverse_iterator<class std::vector<unsigned="" char,class=""
std::allocator<unsigned="" int=""> >::const_iterator,unsigned char,class std::vector<unsigned char,class="" std::allocator<unsigned="" int=""> >::reference const ,class std::vector<unsigned char,class="" std::allocator<unsigned="" int=""> >::reference const *,int>(class st
d::vector<unsigned char,class="" std::allocator<unsigned="" int=""> >::const_iterator)'
c:\program files\microsoft visual studio\vc98\include\utility(138) : warning C4786: 'std::reverse_iterator<std::vector<unsigned char,std::allocator<unsigned="" int=""> >::const_iterator,unsigned char,std::vector<unsigned char,std::allocator<unsigned="" int="">
>::reference const ,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const *,int>' : identifier was truncated to '255' characters in the debug information
c:\program files\microsoft visual studio\vc98\include\utility(138) : while compiling class-template member function '__thiscall std::reverse_iterator<std::vector<unsigned char,std::allocator<unsigned="" int=""> >::const_iterator,unsigned char,std:
:vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const ,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const *,int>::std::reverse_iterator<std::vector<unsigned char,std::allocator<unsigned="" int=""> >::const_iterator,u
nsigned char,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const ,std::vector<unsigned char,std::allocator<unsigned="" int=""> >::reference const *,int>(std::vector<unsigned char,std::allocator<unsigned="" int=""> >::const_iterator)'
|
|
|
|
|
This message occurs 'cos of STL usage and the compiler can't handle long identifiers correctly. This is not a problem. Use #pragma warning (disable : 4786) to get rid of it.
|
|
|
|
|
Can someone please explain how FitTimeScale method (GraphAxis) works?
I am trying to find out by looking at the source code, but it seems I am missing something. The most troubling part is the "double *fStepWidth" and the "int nBestCount".
Any ideas shall be appreciated
|
|
|
|
|
Just a "getting started" question. I have a C++ dialog already in which I want to use the graph control. What steps do I need to take to make this happen?
cjm
|
|
|
|
|
Hi there,
I have two things to ask. First, I've found a bug in the demo application which is reproducable in my own implementation. Launch the xgraphdemo application. Right click on the chart to bring up the pop-up menu, and select pan. Move the chart any way to like, and, right click on the chart again. Instand crash (for me).
Second, how is this control licensed? I'm contemplating using it in an application and would like to know the conditions under which I may do so.
|
|
|
|
|
hi,
is it possible to rescale only the y axis for a new cureve? this way the x axis reamins the same, and is useful for viewing eg, f(x) and df(x)/dx , as the values of x are on a vertical line
|
|
|
|
|
Hi!
When I give a graph a new value, so give him a new dataseries with one more value, the XGraph autoscales it. It does so even when the user has turned autoscaling off before.
How can I set autoscaling off even when new values, and with that the whole dataseries, has to be redrawn?
Thanks!
Marc
|
|
|
|
|