Link to home
Start Free TrialLog in
Avatar of IC
IC

asked on

Charts not including all data from table ?

I have defined an xy-scatter chart in msaccess 2003, it is a simple scatter sub type.
It is based on a table. The table consists of 9091 records 5 numeric items each.
I have done this on a report and also a form. The chart is only using the first 3999 records of data.
I can find no reference to limits... I must be missing something,  Can someone help ?

 
Avatar of GRayL
GRayL
Flag of Canada image

I would be suspicious of a 'busted'  table.  Create a new mdb.  Try to copy the table to the new mdb. Do all 9091 records show up?
I should have added:

If so, then copy over the form and the Chart and try again.
Avatar of Ryan
did you check the source of the chart?
Select * from table

I've run into many quirks with charts, but I'd have to see the chart's source.
Avatar of IC
IC

ASKER

Been there, Tried that...

New DB, Only Table and Form.

I edit record 3999 and it shows on chart.

I edit record 4000 or above, no chart change...

Obviously a limit.
It's not feasable to average down to lesser records.

Same result with Chart on form or Report or Wherever.
Same result with chart based on table or query.
I thought it gave me an error when I went over the limit.
Can't you really distinguish 4000pts on a chart?

I found this post to which there was no response.
<quote>
It appears that I can not show more than 3999 datapoints on a chart.
Is that true? - and if so: Can I change that limit?
</quote>

Would seem so then.
Avatar of IC

ASKER

Also; I tried deleting a column of data from the table and compacted the DB...
Unfortunately, no Change.
Chart data ALWAYS stops at record 3999 period.

You Might be able to trick it, but I have no idea if it works,
Have field1 be pts 1-3999
Field2 be pts 4000+

Depending what the XValues are, it may work.
Avatar of IC

ASKER

MrBullwinkle, I searched for that string of text and found nothing.
I looked for all sorts of answers before I posted here, I've only been working with access since it was born and way back then they used to have an import problem with excel files that was similar. You would import and the darn thing would say "ok .. got all the records" but no, it would stop importing at a certain record and never mention a word...You just would not get the records.
 (you really did'nt need them anyway did ya, there's so many of them pesky things, what the heck ? )
https://www.experts-exchange.com/questions/21093267/Scatter-Graphs-Access-with-many-records.html
Is another reference to the limit.

Can you create 2 charts side by side, and try to blend them to look like one?
Avatar of IC

ASKER

That answer in 2004 was no better then than it is now.
The fact is that to represent a black window 800x600 we are talking 480,000 data points. Gee I guess its not possible to do that huh ? We are only talking illuminating 9000 data points, even 100,000 should be childs play. The sum total characters required to represent the x and y positions of the 9091 recorded data points is approx 157k. Overwhelming to graphics engines ? Dream on.
How many data points are there in a picture, even a small one. I'm quessing a big icon has 9000 data points.
I mean what is an xyplot anyway ? I'm not even concerned with color, they can all be the same.

The fact is that I think this is an undocumented feature and in my humble opinion,
"Oh well live with it" will never constitute a proper answer.
I have on the other hand found what I believe to be a way around this screwup,
which I will test tomorrow... until then...
   
 
I don't think it would overload the graphics, maybe in 1980, sure. I would expect it might overload the processor. That's a crapload of processing. First querying it, then processing it.

Access has first the recordset, theres all kind of arrays of data, it'll have to determine the coordinates of every point, fix the markings of the scales, scale everything to fit. Deal with overlapping. I don't know exactly what all goes on when the chart is processed, but I'm sure what I've mentioned is just a drop in the bucket.

As far as Oh live with it, you kind of have to within Access until they fix it, which they may never. I'm sure companies have created add-ins that'll do more. I know they have to make up for the limited features of access charts, but unless you use one of those, you'll just have "to deal with it".

It personally, but while getting paid to do so, took me 17hours of fiddling and research to figure out how to change the chart axes from VBA.
As far as I know MSGraph has a limit of 4000 x 4000 datapoints (i.e. max 4000 per axis). Have you tried using the Office Web Components control instead or exporting the data to Excel, which can do more?
Regards,
Rory
Excels limit is 6500 I think. I know I've exceeded it before.
Or maybe it was integer max, 65000.

2007 may have increased that though.
(I thought 2 charts side by side was a valid workaround) I was so proud of my creativity :'(
Avatar of IC

ASKER

MrBullwinkle;  It may seem incredibly complicated to the novice, however this is anything but complicated.
My data table consists of some fields, only 2 of which are required for the chart.
The 2 are: X-position in 5 digits and Y-Position in 4 digits.
The chart simply needs to put a dot at the X and Y position.
Scaling is not an issue, the entire data table can be scaled in short order.
The dot does not need to change color and who cares if a dot is there or not.
This is the fundamental basics of a scatter chart.
These data tables can change size as they are based on variable time durations.
There may be 200 records or 2000000 this is the reality.
I think Microsoft Photo Editor will fundamentally do the same thing with millions of data points almost instantly. Try opening a picture in a window and setting the zoom to "Fit to window", then grab the corner of the window and change the size and watch how fast it resizes/recalculates/redraws...
Result: Accepting limits as is or limiting data - unacceptable.

rorya;  Excel can do some 64000 lines, but dropping or changing to Excel does not make for a homogeneous system, not sure of Office Web Components, but it smells of additional complexity.
Result: No Answer  

After some testing this morning, I have produced a functional effective fix to this problem.

As in my original question I stated that: "The chart is only using the first 3999 records of.."
I do not believe that confirming what I already knew is an answer, however the powers-that-be may very well decide otherwise...
In any event, My problem is solved, with NO LIMITATION of DATA.
IC  
Avatar of IC

ASKER

One more thing for Y'all to ponder,

My fix uses ONLY stock MS ACCESS 2003 as shipped, no modifications.
Also no additional components of any type are required.
Thanks to all anyway.
IC
 
And the Answer is??
Avatar of IC

ASKER

GRayL;  

Old school people like us should know this to begin with....( I kick myself)

Does the following bring back memories ?
rpt.Line (sngTop, sngLeft)-(sngWidth, sngHeight), lngColor, B
Whats the point in complaining about MS's limitation to people trying to offer help, then find some workout then not say what it is?

As for being a novice, I think I understand pretty well what runs in the lower levels to make a program do what its supposed to do. Sure it might be as simple as scaling the x and y coordinates to fit the screen, but what about when it does require processing? They chart has to work for all the circumstances, not necessarily be able to plot more because this recordset is "easier" than another. I can assure you, a chart is anything but simple.

If you disagree, try and make a "simple" chart in C, even with static data I bet it won't be under 1000lines of code.
Interesting idea.
How slow is that report with 9k lines on it?
I thought you were after a scatter chart along the lines of

http://www.vb123.com/Toolshed/99_graphs/scatterplot.htm

The line plotter you referenced above is of course unlimited in the number of dots you can place on the report, but....  Good fallback so long as you don't wind up spending hours and days, crafting the graph in the Report writer.  Good to get (the mind) out of the box, huh?  
Please feel free to ask for a refund in Community Support, quoting a link to this question. I won't object, or bother to respond to any other question you may post since you seem to have unvoiced criteria for what constitutes a "reasonable" answer.
ASKER CERTIFIED SOLUTION
Avatar of IC
IC

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of IC

ASKER

GrayL;  I followed that link and did not see anything about limits, do you know about them for that item ?

rorya: My apologizes again, Is the above sufficient ?

MrBullwinkle; I did not mean you in my statements, I do appreciate your input and I did try the side-by-side graph, but there is I think a limit of 4 - 3999's... so it was not feasible.

To All; I come to EE because you are the best...no exception...

In my rpt.line example, I do not understand why I have to add 14 to the Width and 2 to the Height for a box about 4 pixels in size.  It seems to me that logic would dictate offsetting here by 1 and 1. Oh well as long as it works...
Avatar of IC

ASKER

Also FYI;  I did see people saying they got errors but I have never received an 'Over-Limit' error of any sort ever in any of this. I think that's odd.
If I may comment, normally when using With in coding it allows the coder to omit the object named after With to save on the typing and chance for error.  Why With a db when the only other mention of it is to close it?  When you With rst, you coded - With rst - after entering all the lines containing rst!.  Now that have an Attach File ability, you should have zipped the mdb (reduces down to 136K) and attached that, versus changing the extension to bmp which was 1.1 mBytes.  For whatever reason, your report spilled over on to a second page.  Ah well, such is life.  Glad you found a solution that works - to some degree;-)
Got egg on my face on that one.  I never used Attach File below, I just assumed it allowed a zip file.  Wrong!!  Sorry, we've got to change that.
Avatar of IC

ASKER

This code was thrown together from some existing things, it was early in the test phase and is ugly and somewhat wasteful but it is functional for demonstration purposes. Sorry about the size, didn't occur to me. My bad.  The operational code is a whole lot cleaner, does more and is not too much bigger or slower.
The way I see this is kinda like a heart transplant, not very good, but what's the alternative ?
In all the complaints, I do not see any alternatives.
I tried upping the data table to 290000 records and it redrew the thing in about 40 seconds. I have some Active-x controls that work for the records, but loading them was very time consuming, alot slower, go figure. I do not like the whole thing, but jeez, why do I have to go to this trouble when the chart program should of at a minimum at least warned me ?  
I may be a bit gruff, but results are results.
Avatar of IC

ASKER

GrayL; you are of course right in your thinking, I could of zipped the mdb and renamed THAT to a bmp, or other accepted type, but the thought could not penetrate my carbon fiber scull.
I think I've caused enough trouble here with this so I am going to leave this up to the powers-that-be to do what they think is best. I will accept it any way it's decided. I think rorya will never talk to me again...sorry about that.
I hope to have the ability to ask another question sometime, maybe a hard one. (grin)
How about we assume we were both having a bad day, and let bygones be bygones? :)
Rory
Avatar of IC

ASKER

I'm positive I was having a bad day, the only bad day for you was probably dealing with me...
IC
Here everyone makes up, and I thought I was the one getting yelled at.

IC, depending how often or to what extend you need nice charts, but I heave read about add-ins for Access that do nice stuff. I'm not in a position in my job to ask for software, but from what I read they can do amazing things (like animated charts). I'm sure they plot more than 4k pts too.

I've always hated access charts. They're under documented and seems odd to not be the same as excel counterparts. But I had to deal with what I have in the work I currently do.
Avatar of IC

ASKER

I will repeat myself:
"As in my original question I stated that: "The chart is only using the first 3999 records of.."
I do not believe that confirming what I already knew is an answer, however the powers-that-be may very well decide otherwise..."
As mine seems to be the only operational answer posited,  and as there is no choice for me to select my own answer as a solution, I am at a complete loss as to how to close this item without awarding points where points are not due.  

Mr. Bullwinkle; With all due respect, you in fact challenged me with your statement:
"If you disagree, try and make a "simple" chart in C, even with static data I bet it won't be under 1000 lines of code."
I responded to your challenge with 59 operational lines of code. Granted it's not in C, but it probably would be less lines if it were. Seems you lost the Bet.

Mr. Rory; In closing, I would like to say with all due respect:
It is in my humble opinion that I offered at least one functional solution to my own problem and that no other functional solutions were posited prior to mine. Further, as I am NOT allotted the same status as others to accept my own solution, I did not feel compelled to offer that solution publicly. This attitude however is not consistent with the whole concept of this forum: It is my belief that "Experts-Exchange" is not about "me" but rather is and should be about "us".
I am reminded of the old statement: "There is no i in team."  
I'm not getting involved in this conversation again other than to repeat that you can ask for a refund in Community Support, and to point out that I offered you two viable alternatives, which you chose not to pursue.
As far as I am concerned, you can have a refund with no objections from me; others may differ.
Regards,
Rory
IC - what is your point?  If anything, your action in awarding a C after it was acknowledged by all that you indeed had worked out your own solution - is malicious.  You will get no further help from me in this forum.
I still agree with GRayL and recommend PAQ with refund. If it's possible to delete everything that isn't directly related to the solution, so much the better! :)
Rory
Avatar of IC

ASKER

Look; I simply wanted to put this to rest. This is beyond reason.
Yes I solved my own answer (in my opinion), but the system really does not allow it and I have the distinct impression that both Rory and MrBullwinkle feel as though they offered answers. (They did technically offer answers)  If this is the case, then they at least deserve some credit. GrayL offered some help also so I reasoned that at least I should distribute the points to all, in any event I was attempting to end this disaster.
Apparently I stepped out of the frying pan directly into the fire.
I was perplexed as stated in my writing, and then I saw Rory's answer and it sounded like his earlier tone, so I realized that this is immature and that I should of just closed this thing in the first place. Why don't we just let it go closed and leave my last distribution. That way at least I thought there could be no losers. I really feel embarrassed enough over this whole debacle so please lets put an end this.
The system does allow it - as we have said repeatedly you can get a refund while still getting this PAQ'd since you answered your own question. That way you get your points back and there's a solution on record for other people's information.
In case you are not aware, most people don't appreciate getting C's since they know that it is the lowest grade you can give. For my own part, I would rather not have any points than get a C grade.
In summary, all you have to do is ask for a refund - we are all (as far as I can tell) fine with that.
Regards,
Rory
Vee_Mod:  Let's PAQ, refund, and move on
Closed, 250 points refunded.
Vee_Mod
Community Support Moderator
Avatar of IC

ASKER

Unaware of C but aware now.  
Agreed.