I was just going to read it in with a quick function that I'd write for the data depending on the formatting and map it with mouse over effects to a canvas element.
If you are new to it, I'd suggest a library like https://code.google.com/p/jquery-csv/ for parsing the data.
Then you could use a charts library, like my preferred http://www.highcharts.com/ to map the data.
I connected the Pi to my electric meter like this (sorry it's in French). After running this command "stty -F /dev/ttyAMA0 1200 sane evenp parenb cs7 -crtscts" I can read the live output in /dev/ttyAMA0.
Then a cron job run a C script every minute to record the current consumption (labeled "IINST" the output) in a sqlite database. I also record once a day the number of kWh consumed (labeled as "BASE" in the output) to compute later the number of kWh consumed each day.
I use simple PHP to retrieve the data I need for the web page and highcharts to draw the curves!
If any question please ask! I don't mind sharing the source code but I doubt anyone is interested.
Mixpanel is mobile analytics. Think Google Analytics, but specifically optimized for use in mobile applications. Developers include their SDK or use their REST API for tracking specific events in their apps or websites, e.g. clicking on a 'Close' button will yield a tracking event to Mixpanel asynchronously (not blocking the UI, so the user won't actually notice). The data shown on the link is then gathered from their internal database anonymously and shown in a pretty highcharts chart.
More trends can be found here.
I've used:
highcharts.js http://www.highcharts.com/
ChartDirector; haven't used in a few years but they do have a ruby version: http://www.advsofteng.com/gallery.html
Both worked great for me.
That ones actually not that bad compared to when I first started messing around with making those graphs, trying out some different ways of showing the data. Let's just say I never made that version of the graph for any subsequent seasons.
Also, in case either of you are interested, the place where I originally got that code has other graph types as well.
What about using something like HighCharts to render a jpeg image on your spacex stats server and put the pic in the side bar (or as the background of the header) then have the server swap the image every hour or so.
That might be a good way to get 1 or 2 event countdowns up top.
NOTE: I am a network engineer not a programmer. Feel free to tell me I'm retarded.
I don't completely agree that it's a shit graph. But the solution you gave in your 2nd post is good. A interactive page because of the many lines would be perfect. Especially with a mouseover showing the name of the team.
This is possible with one of the many online tools like http://www.highcharts.com/
You might consider rotating that time axis 45 degree's for readability: http://www.highcharts.com/demo/column-rotated-labels/grid
It sounds like you want a custom zoom. I've also done this manually. I usually use middle ware to calculate the values and pass them to javascript.
var chart = $('#highchart_container').highcharts(); chart.zoomOut(); var js_min = 0; // put your determined values here var jsmax = 100; chart.xAxis[0].setExtremes( js_min, js_max, false); chart.redraw(); chart.showResetZoom();
Sounds like you have too though.
The benefit of doing it this way was that the user can press the zoom out button to view all the data if they prefer. I like full transparency in my charts.
Firsly, with any "make something to look like this" problem, identify the key components. In this case you will need a chunk of data, a chart, a total counter (top area), and a counter of patient's stay length (bottom area).
For any project, data is king. In this case the data will need to be a json dataset and can be entirely made up so long as you have the right kinds of data. Likely your textbook will have some useful information about json. W3Schools is great for quick reference and basic tutorials (but not much else).
Once you have identified and created some bogus json data, start actually building the project. You will need to link the highcharts.js library file, then begin using their documentation to start a basic line chart and feed it the json data. Looks like they are well documented, so you should be able to figure most of it our from their docs.
Once the chart is drawing correctly then build the elements around it (and the counters) and use the jquery().ready event to have a function write the bogus data into placeholder elements (spans are nice for most placeholders, but just about any html element with an id will do).
You'll want to use jsfiddle to build your assignment (assuming you don't already have a js IDE or some other editor), just make sure to save your work as you go.
If you have any specific problems feel free to pm me.
I have used highCharts for our company's clients for a year now for when we need modeling tools and visualization in a reactive and dynamic environment. It's defaults are visually pleasing but more importantly is very easy to configure/setup. Check out the demo gallery (http://www.highcharts.com/demo/) and their API documentation(http://www.highcharts.com/ref/), which is very handy since it is hooked into jsfiddle for easy "fiddling".
PS: i did try other tools like google's and flot but that weren't even close.
Hey there!
First off, I would just like to say I enjoyed reading through your review. However, I do have one suggestion/complaint. While the graphs are nice looking, they can be a little bit cluttered, especially when I am trying to dig into a certain card for a specific FPS or frame timing number.
My main suggestion, depending on how tech savvy you are, would be to use JavaScript based charts, for example, Highcharts, which allows users to hover their mouse over the graphs and get the exact values in a readable form. I have used it in the past and think it is amazing and very easy to setup. They have great documentation on their site, and its open source.
Please don't take this post as anything other than constructive criticism, I only feel like this would enhance your site quite a bit.
Thanks for the great work!
That's totally wrong - Google charts API was a backend tool that spat out an image.
OP, I love HighCharts for frontend work and have started considering them for backend as well, which they have just recently started supporting -- http://www.highcharts.com/component/content/article/2-articles/news/52-serverside-generated-charts
Of course it is! As I mentioned at the end of the README.md, just try to mention the source if you use my code. But if the charts are the idea, maybe the right way is to credit this post (as I did in the first lines of the RAEDME.md) and, surely, Highcharts.js :)
While this isn't a PHP solution, I'd recommend Highcharts: http://www.highcharts.com/
It's a Javascript library for plotting chart data. It's got a 'wow' factor, it's quite interactive, extremely customisable and while it's free for non-commercial use, you can buy a license for it to use it commercially and the prices are very reasonable.
All you have to do in PHP is turn your data into the appropriate format in CSV, XML or JSON and Highcharts will plot it for you.
I have no affiliation whatsoever with Highcharts.
I never used django-chartit. I have had pretty good success using highcharts (and the charts looks really nice too).
http://www.highcharts.com/demo
Note highcharts requires a fee if you are going to use it for comerical purposes.
If you're happy "outsourcing" the rendering and have straightforward needs, then Google Charts is a simple but effective choice.
For something entirely self-hosted, I've heard favourable comments about HighCharts, though I haven't used it myself so can't comment first-hand. Note that this one is commercial so if you want to use it there's a charge in some cases.
If you want heavily customised or interactive visualisations and you're happy coding up some non-trivial JavaScript, d3 is the 800lb gorilla of this field. It can do just about anything you can think of, and quite an ecosystem has grown around it as a result. On the other hand, for simple cases it's arguably not the easiest way to get results, because the added flexibility can also bring added complexity.
Any of the above will generate smart and clean graphics, and all are well established with a solid track record, so probably one of them will meet your needs.
[Edit: I'm assuming that by online you're talking about presenting data on a web site. If you meant some sort of online service where you upload data and download an image file or something along those lines, these tools probably aren't what you're looking for.]
Made this project for fun using javascript and highcharts. Data is from Pro Football Reference. Select any current NFL team to see their historic heads up records using the dropdown on the left.
Are you looking to develop web-pages that your 5500+ users can get to that include dashboards/charts or are you looking to allow those 5500+ users to generate the charts?
If it's a simple matter of you making the charts and then deploying them out to your users then you may look into something like highcharts which is pretty simple to work with (http://www.highcharts.com/demo) (you feed it JSON data typically via an API and configure it via javascript). If you want to go with something completely free then I'd probably point you to some of the examples for d3js (https://github.com/mbostock/d3/wiki/Gallery) which require a bit more work to use but are also great.
Going the opposite direction, a lot of BI vendors offer rapid development tools for building out dashboards/charts/reports as a web application/page. They'll cost you a bit of money but ultimately make up for themselves in terms of time savings (I happen to work for one of these vendors so I'll abstain from links).
i know this doesnt answer your question, but i find it pretty easy to use highcharts instead, then you don't have to worry about writing files to disk. highcharts is very feature-full, as well. i just use django templating to build the js object for the chart.
gotta pay them tho if it's for a business.
Google i think has a free chart api that has been updated pretty nice recently.
Since your data is in xml you prob will have to parse xml to json obj or some shit (plenty of java/c++/etc libs that do this for you) good luck.
I dealt with this thing before, with a dashboard full of charts, graphs, and other statistics. First question that comes in mind is who will be using this dashboard and what do they need to know. Categorize the information based on their needs, make sure they know where to go to find what they need, and don't forget to validate to the user to find feedback. Also make sure that you use the right chart for the right information. Don't overuse colors without meaning.
As for the chart design, I like the simplicity and crispness of Highcharts, but it depends on your client.
I made something like this. I used this tutorial he uses a different sensor but it doesn't matter. I had two sensors in my system and made MySQL table for each.
To make cool graphs I used http://www.highcharts.com/ To make cool sensor gauges I used http://www.rgraph.net/
There are a lot of jQuery libreaties for that so choose one you like the most
Even better would be interactive. Since if you make each line a player (as you probably should), it would be perfect for interactivity. D3 is probably overkill for this; for simple little graphs I like Highcharts. There are a whole bunch more options not shown in the demo; for example the zoomType option would be really useful here.
There are plenty of market data providers out there- http://www.xignite.com/ seems to be a pretty popular one with a decent API. You'll likely need to find a developer, but some options for displaying the data (with JavaScript):
AmCharts CanvasJS - http://canvasjs.com/javascript-ohlc-stock-chart/ HighCharts - http://www.highcharts.com/docs/getting-started/your-first-chart
There are others too. Market data can get pretty costly, so be aware of that.
If you're getting JSON, I'd encourage looking at ways of using the data as-is. As deewd mentioned, you're going to either need a table to cache the data, or use a temp table to hold the data for your calculations. Depending on the size of the data retrieved, there could be a lot of overhead.
Especially in automating this, it seems like you'd want to skip over a SQL dump all together.
Highcharts is a good example of a tool you can use to visualize data directly from JSON. Almost all of the highcharts examples are using json responses, and they just need a bit of javascript and html knowledge to put together. There is a wide variety of js based charting tools that would readily take JSON data and put it into a table or chart, while also doing averages, sums, and other operations.
I am probably biased, since I know more about javascript than about python, but if the project allows it, I would dump the data in json, and use a javascript plotting library (like Highcharts) to display it interactively in a browser.
Here's what I got for now:
https://jsfiddle.net/nicaem/p4cgzxf4/19/embedded/result/
I'm trying to add the wars between country, but I'll need help, most likely by /GoatPissGasoline , but if anyone know his things in JavaScript, feel free to send a PM.
I don't need help to do the mapping, only in JavaScript.
If you want to do the same/your own, HighCharts have a nice tutorial:
That's a really cool idea, that example you linked is awesome. I'm by no means a charting expert, but I think it would be a good choice for what you describe, I certainly can't think of anything better.
Alas, Highcharts, the charting API I'm using doesn't appear to support chord graphs out of the box so I wouldn't be able to implement it with that (easily anyway). It looks like D3 supports them, so perhaps further down the line I can investigate adding that in.
The entire dashboard is custom. It's a mish-mash of Javascript, HTML, CSS, and PHP.
Basically, what you need is:
A serverside chat bot that listens for messages and creates statistics. Youll have to choose the programming language. If you dont know any, this will be alot of work for you to learn.
A serverside database which stores those statistics. Best would be MySQL or PostgreSQL I guess.
An API for your website to communicate with, unless you dont want realtime statistics.
A clientside GUI that somehow displays the data, probably utilizing graphs. highcharts is amazing for that.
I would post my code, but it does alot more than just keep a few stats. You can look at the stats here
try http://c3js.org/. http://www.highcharts.com/ also has a lot of great stuff built in, including click and drag to zoom.
I used to use d3 and spent so much time getting good at it that I scoffed at this stuff... but in the end the charts pretty much look the same and a lot more corner cases are handled by default. Felt stupid not to use a chart library instead.
this can be done using any of the google charts or highcharts - $590 for 1 dev.
you can set it up in SP designer creating empty data view webparts connecting it to the desired list and sticking jquery on top.
I did it long time ago will try to search my old files. edit: pricing
I've used google charts quite a bit for company intranet projects. What sort of trouble are you running into?
We're looking at switching to highcharts for our next version, I haven't used it yet, but here's a link: http://www.highcharts.com/
The reason you are getting that '2' in your x series is that you have three data points for each methane and CO2 pair, but you've only specified two x-axis values. What you probably want for the x-axis categories is the <sample_date> value. Reference this fiddle from highcharts:
http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/column-basic/
However, there is another problem which is that the scale of methane and CO2 values is very different, so when I plot your methane and CO2 values on the same graph, the CO2 values barely show up (77-84 for methane vs. 0.44 - 0.84 for CO2). If you tried to graph these on paper, you'd have the exact same problem. So, you either need to show these in separate graphs or use a multi-axis graph as in this example:
http://www.highcharts.com/demo/combo-multi-axes
If I was trying to figure this out, I would take your xml values and hard-code them into one of the highcharts jsfiddles. Get that example working with your hard-coded data first so you are certain that the chart options are all correct, and then work on making the code dynamically parse the XML.
Here is a fiddle that I think does what you want and also illustrates the scaling problem:
http://jsfiddle.net/cz57hdo3/1/
One issue for certain: you were using parseInt on CO2, but this is a small float value, and so the result was 0 = no graph. I didn't go back and try this on your code, so it's possible that just changing from parseInt to parseFloat would cause your data to at least show up.
edit: typos
There are various titles; for instance, "front-end software engineer" is a common one.
There are also companies that essentially just make front-end libraries. For instance, at work, we use third-party libraries from telerik and highcharts.
While Highcarts is atypically used for front-end client-side charts, you can also use it server side to generate PNG charts.
That's at least a different option :)
Looking at the elements view on Chrome it looks like some flavor of Highcharts. Lots of div tags referencing the name and their site looks to have an example chart similar to the netmarketshare.com one.
Data source: http://www.pgatour.com/players.html Tools: http://www.highcharts.com/products/highcharts
My first real attempt at a data visualization, go easy on me. Constructive feedback would be great.
I'm logging everything in a 1min interval into a SQLite db and display it on a webpage (python/flask) with the Javascript chart library highcharts.
The query to get averaged values for an interval looks like this:
SELECT timestamp, ROUND(AVG(temp_inside), 2) AS temp_inside, ROUND(AVG(temp_outside), 2) AS temp_outside, ROUND(AVG(pressure / 100), 2) AS pressure, ROUND(AVG(humidity), 2) AS humidity, ROUND(AVG(temp_gh), 2) AS temp_gh, ROUND(AVG(humidity_gh), 2) AS humidity FROM weather WHERE 1 AND date > DATETIME("now", "-7 day", "localtime") GROUP BY ROUND(timestamp / %(interval_seconds)s)
This takes only ~10ms with proper indexes.
Cool, Google actually has a decent API for it that you can use for a while: https://developers.google.com/chart/interactive/docs/gallery/candlestickchart
A better option but little more complicated is highcharts highstock series of charts: http://www.highcharts.com/stock/demo/candlestick
Wanted to make one myself, but got too much at once right now and I'm not the best programmer. Just make it real-time and you will be a success, as a day-trader refreshing the page every few seconds is a headache.
I suggest you look at <strong>Highcharts Documentation, section 4.1</strong> which contains example code for doing what you are. It may take you a while to understand what the code is doing and how you must adapt it, but the code under point 3 processes the comma separated values like you have. If you cannot get it to work, I suggest you find a way to put the code in a <strong>jsfiddle</strong> then link it asking for assistance.
It depends on what you mean by live data.
If all you need is a chart that you can dynamically generate at the time of the page load, Microsoft has made free chart components available as of 3.5 sp1: http://www.microsoft.com/en-us/download/details.aspx?id=14422. Nothing fancy, but they work well enough.
If you need to be able to show updates to the chart in real-time, without reloading the page, a client-side solution is probably better. Someone mentioned jqPlot, which works. Personally, I'm a big fan of Highcharts. There's also the incredibly powerful d3.js if you need something more flexible.
Highcharts is the best one out there, but you would have to use ECMAScript to get the data from the list and javascript/jquery to build the object used in rendering. I have no experience with Fusion, but my experience with Bamboo is that it is very limited.
Here are some ideas:
Graphs! Lots and lots of interactive graphs. Look at Highcharts or Google chart API for ideas. Each WOD (Fran, Filthy 50, etc.) can have it’s own line graph; one plot on a timeline each time it’s performed. X: date, Y: time/reps/whatever.
“Event” tag/annotation for said graphs. Meaning, one can “tag” a date with a simple comment, and that “tag” can show up on a graph as a vertical line cutting down the line graph. That way, it’s easy to visually represent changes in routine to see how they end up affecting overall performance. So, for example, I can tag August 1st as “Upped calories, dropped Saturday long run,” and I can see on the graph if my performance trends upwards or downwards after that.
Also, the ability to import data via a CSV file - for those of us who have a backlog of data to start with.
Also, put it on github, so developers like me can tinker with it. :)
We've been testing highcharts for a dashboard system. I've tested with 2000 points per graph, 3 graphs on one page, on the 4 main browsers at once, loading info every second in all the graphs. That pushed my i7 windows machine to start becoming sluggish.
Also their new stock charts has examples of loading large amounts of data, but only rendering a smaller number to reduce workload. http://www.highcharts.com/stock/demo/data-grouping
I agree that their site looks a bit dated, but I love how they did it otherwise. I think it would be great if they used some sort of interactive charts to spice it up a little (I plan on using that JS library for my own charts in the future).
both of these would be great visual representations. I like the first one better but both successfully repair the problem i pointed out. Nice work!
edit: actually a small correction would be to represent the data in such a way that it's clear that different color/shades of bars on top include the amount below it (so trumps cheeto-color bars include the obama's blue color in the total). This would be helpful since there are some charts that stack like this where one is supposed to look at each section individually and sort of subtract the difference from where it starts, as you can see from this it makes more sense in percentage scenarios but they aren't exclusively used in such context.
But still good work fighting improper data visualization!
I have used Highstock (http://www.highcharts.com/products/highstock) on the software I work on at my job. It is very customizable, flexible, and free for non-commercial use. They have a very well layed out API online (http://api.highcharts.com/highstock).
Nice work! Not sure what you're using for charts, but I've had a lot of success with http://www.highcharts.com/ I believe it's free if you're not monetizing your site. I also like https://wrapbootstrap.com/ for quick and cheap templates. There are some nice ones specifically geared towards charts etc.
500,000 points is not large at all -- I routinely use highcharts to plot OHLC graphs of twice as many points, zoomable and interactive. Have you tried it?
Try highcharts; sample here. If you need further help, do leave a comment.
Indeed it could be possible. You should create a graph of these rates over time. That would be super interesting. Coding wise, you can just take your every 10mins stats and concact that into an Array. Then use something like a classic http://www.highcharts.com/demo/line-labels
Well first off, the example you have is a "CSV-emulated" example (it's not really a .CSV file that is being loaded in). The <pre></pre> element is an element that keeps text-formatting (e.g. nice for delimited files such as CSV's to pull from in an example), but if you have something like an actual separate file, then you would need to derive some kind of system to pull that (something like uploading the file and open/reading it to then be transcribed in the JS, using ajax, etc). Nonetheless, assuming your CSV is something like the example where you already have it dragged/dropped into the pre element, well then that can essentially be stored anywhere as long as it proceeds wherever you load your script in the HTML file; e.g.
<head> </head> <body> <pre>your pre content</pre> <!-- just make sure this comes after --> <script src="mySrc.js></script> </body>
Likewise, as far as storing the file, you can store the file anywhere you want and either reference it via an absolute or relative path (your local system just of course needs access to the file; just like you type C:/desktop, etc).
Now, as far as an actual "using a CSV file for Highcharts", this is a better example from Highcharts with a relative path for the ajax'd CSV http://www.highcharts.com/studies/data-module-csv.htm (use your editor to view the page source => right click => page source). See how they use $.get (an ajax method) to get the CSV data and then load that in - not a <pre> element like you found in your example (note, I want to reiterate that technically loading the data in via a <pre> element is fine, it's just I would imagine you probably don't want to manually copy/re-type/paste a large CSV file into it).
edit: here's some more useful examples; http://jsfiddle.net/highcharts/ayycv/ - I think the google spreadsheets one might work well for you.
hey man, I recommend using highcharts.com very easy to use and you can create any type of charts from data out of your data base. I use it for my "project".
P.S. also check out those awesome gauges you can use too
Those exact graphs are actually pulled from highcharts.js
Here is a mockup of something similar, plotting "Network traffic".
Of course, you would replace Math.random() with actual data...
I've built these before and that's exactly how I did it. Using something like php simple dom (http://simplehtmldom.sourceforge.net/) makes it super simple. Then just append the result to a CSV. From there the CSV can be pulled in with something like Highcharts/Highstocks (http://www.highcharts.com/stock/demo) depending on how in-depth the display needs to be.
Edit: the reason I had to use simple dom was that Google Finance/Yahoo Finance weren't covering the particular stock at the time (listed on the ASX/Australian Stock Exchange), so we had to scrape the ASX site directly.
its a datetime from my database. So i guess its a object. Its for javascript, and i tried to use isoformat, but that dosent seem to work with this highcart graphs: http://www.highcharts.com/demo/line-time-series. The only way i have ben able to get it workign is by passing the date as: 2016,02,07,00,12, but then the month is one ahead due to js month starting at 00.
if you are looking for angular 2 components for charts, currently there aren't any. If you need a generic Javascript charts library to play around, check Highcharts -> http://www.highcharts.com/
I think there is a learning license, its very complete and based on SVG. If you want to draw your own charts from scratch then D3.js is likely the best choice
I'm currently using Drupal Charts, which uses Highcharts, in a project but I'm looking for a way to use the drilldown functionality with it.
Imagine this scenario: I have a group of cars grouped by color and make. I want to add a chart to show how many cars there are of each color. When a user then clicks on a color I want to use the drilldown functionality to show how many cars of each make are available in the chosen color..
Anyone have any idea how I could achieve this? Thanks in advance!
I like to save some work, and use Highcharts + Json.
http://www.highcharts.com/docs/working-with-data/live-data
http://www.highcharts.com/docs/working-with-data/custom-preprocessing#3
http://www.highcharts.com/demo/line-ajax
I must sound like a salesman, but it just saves me so much effort.
I think some sort of about/home page is definitely needed, I'll see what I can do tonight.
Maps are definitely on the list, that gif is very cool. /u/Nica-E-M has been playing about with Highmaps, hopefully together we'll be able to create something dynamic that you can play with.
Thanks for the suggestions!
SNMP I'm just using the built-in PHP functions and calculating the differences between the two measurement points to find the bandwidth usagee.
Speedometer: http://www.highcharts.com/demo/gauge-speedometer
I use http://data.sparkfun.com
you can pull data off with javascript and then i just use some more javascript magic for some graphs
the data storage is free and you just open the html file locally, it doesn't have to be hosted on the web.
A simple line graph with a series representing each database. Then color the area between, which will be the difference. The X axis will be the functions. Y is time. And you'll have two lines one for MYSQL and another for postgres. http://www.highcharts.com/demo/arearange
Or a 3 series column chart works too http://www.highcharts.com/demo/column-basic
Quite easy, especially if you're using a debian based distro.
sudo apt-get install apache2 mysql-server php5 php-pear php5-mysql
If you want to speed things up you could omit apache2 and just use php's internal webserver. It's not very powerful, but it's very light and usable for small scale stuff. If the project is not very complicated, or not very high load, you could also move to using sqlite a serverless database which would remove the need for mysql.
As for charts, (I assume you mean graphs?) I would suggest looking at highcharts. Using this all your php has to do is provide JSON based data points, and the web browser will do the rendering. This removes the need to have the server render it.
ok, you need to look at the ajax loaded functions in the api: http://www.highcharts.com/demo/line-ajax
On clicking the button, you'd generate the url as above, and then pass it to the $.getJSON function, and rebuild the chart. this is a high level explaination, but this should get you started and give you more to search on.
First of all thank you for such a well thought out response. I'll step back a bit and explain more. I do data analysis for a huge, huge government consulting firm.
Part of my job is to present the result of the analysis to potential government clients. I like to make charts and graphs in javascript because they look great and are interactive which the clients love. I "learned" js on my own over the past two months. Basically I'm not great at it. Check that I'm bad at it. As an example here is a js chart I might copy and modify for a client. http://www.highcharts.com/demo/line-time-series.
If and when they decide to pay us to make the real deal I hire (internally) a team of developers, a graphics person and a database (SQL) developer (or a few) to make the final, dynamic product. For a marketing product, however, (i.e. something I work on in my spare time) I need to take data from the client, analyze it, the populate the chart/graph with data that looks real and can be interactive. It's hard coded. To do that I take the columns of data I have and drop it into the html I have grabbed from open source libraries.
Does that make sense? Again, I'm new to this. Thanks again!
How about just mixing it?
and then run them through a minifier + concat?
> Dexcom CGM
No. I used to have an Accu-Check Smart-pix, which comes with Windows-only firmware that allows you to "share your stats over the web". Turns out it is merely a USB-drive that contains HTML, CSV and some ActiveX.
So I wrote some scripts that chomp on the CSV and make nice reports from that. Which I could "share over the web" by mailing them :)
I now have a pump, which has no export feature, so I simply keep a manual diary which I turn into some graphs.
FWIW: I find the punch-card graph great to get a quick visual representation of values per hour/weekday averaged, to see weekly patterns: http://g.raphaeljs.com/dotchart.html And I find band-charts great to see trends in more detail: http://www.highcharts.com/demo/arearange-line The middle line shows my most recent values. The band shows a moving high and moving low (all values in last month around Time T, taken the Max)
If you can host a web page somewhere, and have JQuery & JSON expertise, look into Highchart. There are many chart types and gauges. License are practically free.
Agreed. I really like GnuCash... I'm just spoiled by pretty graph libraries like Highcharts. Truthfully, I've been looking for a way to export my data so I can parse it in a local web app, but I'll see what I can whip up using the helpful resource /u/thejaq provided.
Highcharts - Free for non-profits.
Management loves pretty colors and flash graphs : ) Also gives you an excuse to dive into HTML, CSS, and Javascript; having a little experience in these can be valuable.
just to sound dumb.
The reason i wanted to do javascript is to play with some APIs for Tableau, and use this type of thing.
are these things possible in Python?
Hey /r/dataisbeautiful!
I'm one of the members of U of I's Election Analytics project. We've been doing this for 3 elections now (2008, 2012, 2014), and I worked really hard this summer to redesign our website and build a data platform. Its no Nate Silver, but certainly a decent effort from a student group.
We gather polling data from Real Clear Politics and then run our own analysis to determine likely outcomes. The visualizations are custom built jQuery plugins, the fancy ones use Highcharts and Highmaps internally. You can read the details on our methodology page, and I'd be happy to answer any questions about our process.
I was hoping to get some feedback from the community. Can you tell me what you like, what you don't, and what you want to see for 2016?
Thanks a bunch! And don't forget to checkin often, we post daily updates.
I was thinking to run it on a local server, the raspPi as server or an other low power thing such as a thin client.
But the d3js looks very nice it looks similar to: http://www.highcharts.com/demo/dynamic-update
but lets say I've 10 nodes which each 5 sensors (which will be interpreted as a node) and they update every second and I've 2 years of data= then I'll have 3,153,600,000 pieces of data with every piece at least byte
Will I then still be able to draw a graph of that? Or how should I deal with that?
thnx for the information
I've used d3 before but the javascript can get kind of messy. Also, someone posted an app they made yesterday where they used HighCharts. The graphs looked awesome, but I cannot speak to how easy it is to use.
Testings screens with chosenjs, fullcalendar, highcharts, and other ajax-ui widgets aren't a straight pass or fail. If you run the test 10 times in a row with the same randomized seed, it will pass 5 or so times out of 10. None of us have been able to figure it out.
Made a script that build and fill a xml file every day with the size of all SharePoint Content DBs, then i built a web report with highcharts, with the top size DBs and its growing.
We've been working on this kind of thing, except weeks and months of bandwidth data, with data sampled every second.
For medium amounts of data, the highstock data grouping might suffice:
http://www.highcharts.com/stock/demo/data-grouping
In our case we had millions of data points, so we have to send only the selected data, and the resolution has to be lowered. We send 400 data points every request, and use the standard highcharts charts.
High charts will do everything you can imagine, including zooming, tooltips for information, and show/hide data sets. We can even play the data live by updating the data using AJAX requests.
Here's the trick to reducing the amount of data to deal with from the database: use accumulating totals, then you can sample every Xth item, eg 100th item. Then work out the differences between them to effectively lower the resolution of the data. eg. if you have some samples: 4, 8, 2, 3, 1, 5, 6 that would be stored as 4, 12, 14, 17, 18, 23, 29. If you sample every second item it is 4, 14, 18, 29 the differences are then 10, 4, 11 which can then be plotted.
Hope that helps
Google Charts is great. You can try it interactively on this page.
I prefer Highcharts though because it's written in JavaScript and you're not limited in the number of requests in Google Charts.
We are using Highcharts with our own styling applied. It's a commercial product but free for non-commercial use.
Also look into gRaphaël which is a free SVG/Javscript graphing library. It's more low-level but still very good. Github uses it in their commit charts.