|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Announcements
Chapters
Services
Feature Zones
|
Note: This is an unedited contribution. If this article is inappropriate,
needs attention or copies someone else's work without reference then please
Report This Article
IntroductionThis article shows how to generate some column chart images for your users on a easy way. You can simply give some arguments to the class library and receive back an image object, or directly save it on hard disk. Will be shown in this article an example application, how to use the class library, the features implemented and the future enhancements. The image below is an example of column chart created using this class library.
Building a library like this it´s not a so easy task, because the number of calcs you have to do to render the image grow up faster on the way you add new features. Making a library with just a few features also doesn’t make sense, cause you’ll probably have to re-implement it again all time you need to use it. Searching on the Web it’s easy to find some good (great) chart generator libraries. Most of them you have to pay if you want to use without have access to source code. The goal of this article is to share knowledge and give developers an alternative to create some simple column chart images. The image below is another example.
The Demo ApplicationTo easily understand the features of this library I have developed a demo application, that looks like the image below:
With this demo application we can give some arguments to the engine and the image will be rendered just below (as you can see on the image). It’s important to say here not all the features and possibilities are avaiable at this demo application. Inside the first group named “Column Chart Properties” we have the general chart properties, like image width, height, margins, etc. The second ant third groups are related to the columns values and descriptions. Through this groups you can remove and add new columns to the chart. Try it! Library Features – How To Use It!To let this project most flexible you can format the chart your way. There’s lots of combinations you can create, giving the charts other appearances. I’ll enumerate here some properties of the chart you can access and change. Most of this properties are self explained. Chart Properties:
We can create an instance of the chart object with just this code: ColumnChart chart = new ColumnChart();
chart.Width = 250;
chart.Height = 220;
Now we’ll have to add some columns. Below are the columns properties: Columns Properties:
There are two ways to add columns. The first is using directly the Add method, adding new columns to the collection. The second way is passing a DataTable object to the SetDataSource method. 1st way: ColumnChartItem item1 = new ColumnChartItem(Color.DarkBlue, “any description”, 12);
ColumnChartItem item2 = new ColumnChartItem(Color.DarkOrange, “test”, 15);
ColumnChartItem item3 = new ColumnChartItem(Color.DarkGreen, “description”, 10);
chart.Items.Add(item1);
chart.Items.Add(item2);
chart.Items.Add(item3);
2nd way: chart.SetDataSource(datatable, "valueColumn", "descriptionColumn");
Future EnhancementsActually it’s not possible to group data columns. It’s a limitation of this version. Also would be great if we have other types of chart, like line charts, pie charts, bar charts, etc. ConclusionThis is a limited alternative to generate column charts, but can be used on simple tasks. It’s possible to share some knowledge with this little project, explaining how to use the library and giving access to the source code. History
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||