We use cookies to improve your experience. No personal information is gathered and we don't serve ads. Cookies Policy.

ExpressionEngine Logo ExpressionEngine
Features Pricing Support Find A Developer
Partners Upgrades
Blog Add-Ons Learn
Docs Forums University
Log In or Sign Up
Log In Sign Up
ExpressionEngine Logo
Features Pro new Support Find A Developer
Partners Upgrades
Blog Add-Ons Learn
Docs Forums University Blog
  • Home
  • Forums

ChartMe! - An ExpressionEngine Chart Generating Module

Development and Programming

Jamie Rumbelow's avatar
Jamie Rumbelow
546 posts
17 years ago
Jamie Rumbelow's avatar Jamie Rumbelow

Hey!

I’ve decided I would like to contribute more to the community, and I really wanted to develop something, so I looked for a niche in the ExpressionEngine Module Market, and I wrote ChartMe! Please bare in mind this is my first EE module!

ChartMe! is a dynamic chart generating module for ExpressionEngine. It is easy to install and use, and I provide great support. It currently only outputs bar charts, but I’ve got others planned.

In it’s current state, it has quite limited features, but I follow the ethos of “Release early, Release often”. I have some cool stuff in the pipeline.

How to use

  • Upload the chartme folder to your system/modules directory.
  • Upload the chartme_images folder to your images directory.
  • Upload the lang.chartme.php folder to your languages/english directory.
  • Enable the module in your control panel
  • Enter the EETags into your templates

Example EETag

{exp:chartme title="Scores" type="1" width="200" height="200" colors="true" chart_data="Jamie:10|Mary:6|Sam:8|Peter:4"}{/exp:chartme}

Parameters

title (required)

The title of the chart, displays in an <h2> tag.

type (required)

The type of the chart, horizontal (0) or vertical (1)

width (require)

The width of the chart (in px)

height (required)

The height of the chart (in px)

colors

Whether to use different colors for the chart.

chart_data (required)

The data for the chart. Comes in an array of sorts. Each bar is split by a “pipe” character (“|”), and the name of the bar and the value is separated by a colon (“:”).

For example:

Jamie:10|Sam:8|Mary:4

License

You are free to:

  • Use this software for any purposes
  • Redistribute this software anywhere
  • Change/Modify the software
  • Redistribute your changes

On the condition that:

  • A copy of this license is available
  • Credit is given to me
  • You send me an email if you ever use it for commercial purposes
  • If we ever meet up, you buy me a beer 😉

Support

Feel free to either post in this topic, PM me, or email me directly either by the contact form on my website, or at: jamie (at) jamierumbelow (dot) net

Download

You can grab the latest version here: Here

I hope you enjoy it, and please report any bugs you find.

Thanks!

Jamie

       
Ingmar Greil's avatar
Ingmar Greil
29,243 posts
17 years ago
Ingmar Greil's avatar Ingmar Greil

Jamie, thanks for what looks like a very nice module! I will test this in the next couple of days.

       
james Brown's avatar
james Brown
492 posts
17 years ago
james Brown's avatar james Brown

hey jamie- sounds interesting…can you post up some screen shots of the output chart? the module interface? etc?

       
Leevi Graham's avatar
Leevi Graham
1,143 posts
17 years ago
Leevi Graham's avatar Leevi Graham

Guess I know now why you were asking about arrays 😉 Bring on the screenshots

       
Jamie Rumbelow's avatar
Jamie Rumbelow
546 posts
17 years ago
Jamie Rumbelow's avatar Jamie Rumbelow

Ok!

Here is a little logo I put together:

http://www.jamierumbelow.net/files/logo.png

Here is a screenshot of lots of charts at once running on my localhost:

http://www.jamierumbelow.net/files/charts.png

       
Adam George's avatar
Adam George
283 posts
17 years ago
Adam George's avatar Adam George

Good on you for producing this!

I have a couple of questions - if the answers to both are “yes”, the this would be a very handy tool!

  1. Can the ‘exp:chartme’ tag be used inside a weblog:entries tag?
  2. Can the ‘chart_data’ parameter take dynamic elements, for example:
{exp:weblog:entries weblog="blah" etc}
{exp:chartme title="Scores" type="1" width="200" height="200" chart_data="Jamie:{some_custom_field}|Mary:{another_custom_field}"}{/exp:chartme} 
{/exp:weblog:entries}

If so, you could also use the query module to get a {count} of particular entries or categories.

       
Jamie Rumbelow's avatar
Jamie Rumbelow
546 posts
17 years ago
Jamie Rumbelow's avatar Jamie Rumbelow

Both answers are yes!

One thing though, you must make sure that the value parameters inside chart_data are numbers, other wise it will throw a php error.

Thanks!

       
gridonic's avatar
gridonic
231 posts
17 years ago
gridonic's avatar gridonic

Hi.

Seems to be a nice plugin, screenshots would be very handy. Also your website is really, really slow (right now, I cannot even connect), any chance you can improve this?

       
Jamie Rumbelow's avatar
Jamie Rumbelow
546 posts
17 years ago
Jamie Rumbelow's avatar Jamie Rumbelow

Hmm.. I’ve been having some issues with my server, I’ll sort that out.

Oh, and look for a few posts up for screenshots.

       
james Brown's avatar
james Brown
492 posts
17 years ago
james Brown's avatar james Brown

is there a control panel interface?

       
Jamie Rumbelow's avatar
Jamie Rumbelow
546 posts
17 years ago
Jamie Rumbelow's avatar Jamie Rumbelow

Nope! There doesn’t need to be - everything is accessible from the EETag.

That’s an idea though - set the default settings for most of the parameters in the control panel.

       
james Brown's avatar
james Brown
492 posts
17 years ago
james Brown's avatar james Brown

kinda figured there might not be… just wanted to check though.

       
james Brown's avatar
james Brown
492 posts
17 years ago
james Brown's avatar james Brown

Couple suggestions: • It might be nice to be able to do variable height/width graphs. • Ability to specify the width of the individual bars. • Pie charts. • Automatic handling/conversion of non-numeric characters, so that errors don’t occur.

       
Jamie Rumbelow's avatar
Jamie Rumbelow
546 posts
17 years ago
Jamie Rumbelow's avatar Jamie Rumbelow

Great, thanks for the input.

  1. I’m not quite sure what you mean…

  2. Ok, I’ll see what I can do 😉

  3. Coming up in the next release…

  4. Ok, sounds good.

Thanks!

       
james Brown's avatar
james Brown
492 posts
17 years ago
james Brown's avatar james Brown

so let’s say you have a vertically stacked set of bars. the bars will be created from a dynamic set of data, so there will be a variable number of bars… could be 2, then could be more than 20 over time. what would be ideal is if you could set it up so the width of the chart was 350px, the height of a single bar was 10px, and the height of the chart was variable/expandable based on the number of bars (and spacing between bars). that way for a chart of 2 bars it would be pretty short, and would automatically get taller as more bars were added.

make sense?

       
1 2

Reply

Sign In To Reply

ExpressionEngine Home Features Pro Contact Version Support
Learn Docs University Forums
Resources Support Add-Ons Partners Blog
Privacy Terms Trademark Use License

Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.