I'd look into some intermediary code to reduce your dataset, written in
something with threads (my first choice would be Java, but that's me). It
sounds like you're working on some interesting stuff Mark :)

-Josh

On Wed, Nov 19, 2008 at 6:15 AM, Mark Easton <[EMAIL PROTECTED]> wrote:

>  Thanks Brendan,
>
> We are charting observations from a range of sensors and contact inputs.
> The contact inputs are a special case as they can only have 1 or 0 values.
> But the sensors include temperature, current, voltage, light, humidity,
> vibration, motion, gps velocity, gps location, wind speed, wind direction
> etc.
>
> The client does like the the charting features so he wants all of the flex
> charting cool stuff as well as the ability to see these charts.
>
> But that does not mean that I cant look at a combination of approaches. Its
> a good idea to look at coding a custom chart, and one I will look at
> closely.
>
> Yes I was thinking along the lines of having 2000 plot points. So in the
> case of a 3 month graph I would start with 120,000 points and need to reduce
> that to 2000.
>
> Cheers,
> Mark
>
>  ------------------------------
> *From:* flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] *On
> Behalf Of *Brendan Meutzner
> *Sent:* Wednesday, November 19, 2008 8:51 AM
> *To:* flexcoders@yahoogroups.com
> *Subject:* Re: [flexcoders] Re: Creating a Chart With 50,000 Data Points
>
>  What kind of charts are you displaying?  I've had amazing success with
> scrapping the charting framework all together and simply "drawing" the chart
> programmatically.  Yes, it's a bit more work, and yes it's only feasible if
> you don't really need a lot of the charting features that come in the
> framework.  However, the performance difference is huge.
>
> The project I applied this on was for financial stock data, and using a
> custom drawn chart I mention above, along with the concept someone else
> mentioned by only showing the n-th datapoint interval depending on the
> overall range being displayed worked quite well.  You're able to keep a
> consistent number of plot points (I've found 500-750 performs best) no
> matter what the overall range of data you're displaying.  I say 500-750
> performs best as I also had a horizontal axis slider which allowed for
> constantly updating data in the chart.
>
> Brendan
>
>
> On Tue, Nov 18, 2008 at 1:27 PM, jim.abbott45 <[EMAIL PROTECTED]>wrote:
>
>>   50,000? LOL. ;-)
>>
>> On a more serious note, I have to agree with Fotis and Ricky that 50K
>> data points is too many, both from a (Flash 9 VM at least) performance
>> perspective and probably also from an Information Visualization
>> perspective (unless, maybe, your users have 300 dpi monitors).
>>
>> There are several standard interaction design and information
>> visualization techniques which may be useful to you . . .
>>
>> 1) Aggregation (as already suggested, take 'N' data points, average
>> them, and then only display the average value).
>>
>> 2) Filtering (by sliders on an axis, by date/time, by structured or
>> open-ended queries, ...)
>>
>> 3) Progressive rendering (sample the entire data set at intervals of
>> 'N', render those points, then go back and get the data which is
>> mid-point between the original points, add the new points to the
>> curve, repeat until desired resolution obtained--or on user demand)
>>
>> 4) Non-linear zooming (like idea 1), but allow user to zoom in on a
>> section of the curve, when they do, add the additional data points to
>> the curve for the zoomed-in region)
>>
>> On a more pragmatic note, you certainly _can_ plot more than 2,000
>> points. For example, I've personally used Flex to create charts with
>> over 14,000 points in them, so I know that at least that number is
>> definitely *possible*. However, the overall rendering time was (as I
>> recall) over 3 minutes long. More troubling was the fact that the
>> entire Flex UI become very sluggish once a chart that large was
>> displayed. I've seen good chart rendering speed ( ~= 2S ) and no UI
>> sluggishness, up to about 1500 points. I've also been able to render
>> up to 6,000 points, but it took about 10S for the rendering and the UI
>> started to become sluggish. From your posting, it sounds like you're
>> not seeing those rendering speeds. I'd recommend that you experiment
>> with how you are using the charting objects/API. My experience was
>> that I was able to see some very noticeable speed-ups simply be
>> optimizing how I called the charting API (especially w.r.t. how I
>> loaded the series data). In particular, if your charts are
>> interactive, try to cache anything you can that doesn't necessarily
>> change during an interaction (i.e., axis objects).
>>
>> Last thought: the new Flash 10 VM (Astro) has support for larger
>> bitmaps and also can now do hardware-based rendering, apparently. I
>> haven't tried either of those features myself, but using the v10 VM
>> _might_ be another way to get a performance boost, etc.
>>
>> Good luck!
>> Jim
>>
>>
>> --- In flexcoders@yahoogroups.com <flexcoders%40yahoogroups.com>, "Mark
>> Easton" <[EMAIL PROTECTED]> wrote:
>> >
>> > Hi,
>> >
>> > It appears that Flex Charts cannot handle generating charts with large
>> > DataSets. We tried with 50,000 data points and it thrashed away without
>> > producing a result after 6 minutes. It was able to plot 2,000 points in
>> > about 25 seconds.
>> >
>> > What is the recommended approach for creating charts from large data
>> sets.
>> > The best I can think of is to write some code that will reduce the
>> data set
>> > in size yet still provide enough data to represent the graph accurately.
>> >
>> > Thoughts?
>> >
>> > Ta.
>> > Mark
>> >
>>
>>
>
>
> --
> Brendan Meutzner
> http://www.meutzner.com/blog/
>
> No virus found in this incoming message.
> Checked by AVG - http://www.avg.com
> Version: 8.0.175 / Virus Database: 270.9.6/1797 - Release Date: 11/18/2008
> 11:23 AM
>
> 
>



-- 
"Therefore, send not to know For whom the bell tolls. It tolls for thee."

Like the cut of my jib? Check out my Flex blog!

:: Josh 'G-Funk' McDonald
:: 0437 221 380 :: [EMAIL PROTECTED]
:: http://flex.joshmcdonald.info/
:: http://twitter.com/sophistifunk

Reply via email to