WordPress.org

Forums

amCharts: Charts and Maps
Tying to make charts using amcharts but with values fetched from our sql tables (2 posts)

  1. saurav2785
    Member
    Posted 1 year ago #

    HI

    I am new to am charts.
    I have installed the plugin to my site and then i tried to test by creating one chart that comes predifined with values and i made one, when i preview it through preview section in the plugin then it does show me a chart now i understand that this is just a demo but i want to first integrate that to my page template and then may be trying replacing the value from the demo to our values.

    Now first what i did was put all the jquery code in the page

    [please mark any posted code to keep it readable - http://codex.wordpress.org/Forum_Welcome#Posting_Code ]

    var %CHART%_1 = [];
    var %CHART%_2 = [];
    var %CHART%_3 = [];
    var %CHART%_4 = [];
    
    generateChartData();
    
    function generateChartData() {
    	var firstDate = new Date();
    	firstDate.setDate(firstDate.getDate() - 500);
    	firstDate.setHours(0, 0, 0, 0);
    
    	for (var i = 0; i < 500; i++) {
    		var newDate = new Date(firstDate);
    		newDate.setDate(newDate.getDate() + i);
    
    		var a1 = Math.round(Math.random() * (40 + i)) + 100 + i;
    		var b1 = Math.round(Math.random() * (1000 + i)) + 500 + i * 2;
    
    		var a2 = Math.round(Math.random() * (100 + i)) + 200 + i;
    		var b2 = Math.round(Math.random() * (1000 + i)) + 600 + i * 2;
    
    		var a3 = Math.round(Math.random() * (100 + i)) + 200;
    		var b3 = Math.round(Math.random() * (1000 + i)) + 600 + i * 2;
    
    		var a4 = Math.round(Math.random() * (100 + i)) + 200 + i;
    		var b4 = Math.round(Math.random() * (100 + i)) + 600 + i;
    
    		%CHART%_1.push({
    			date: newDate,
    			value: a1,
    			volume: b1
    		});
    		%CHART%_2.push({
    			date: newDate,
    			value: a2,
    			volume: b2
    		});
    		%CHART%_3.push({
    			date: newDate,
    			value: a3,
    			volume: b3
    		});
    		%CHART%_4.push({
    			date: newDate,
    			value: a4,
    			volume: b4
    		});
    	}
    }
    
    AmCharts.makeChart("%CHART%", {
    	type: "stock",
        "theme": "none",
        pathToImages: "http://www.amcharts.com/lib/3/images/",
    
    	dataSets: [{
    			title: "first data set",
    			fieldMappings: [{
    				fromField: "value",
    				toField: "value"
    			}, {
    				fromField: "volume",
    				toField: "volume"
    			}],
    			dataProvider: %CHART%_1,
    			categoryField: "date"
    		},
    
    		{
    			title: "second data set",
    			fieldMappings: [{
    				fromField: "value",
    				toField: "value"
    			}, {
    				fromField: "volume",
    				toField: "volume"
    			}],
    			dataProvider: %CHART%_2,
    			categoryField: "date"
    		},
    
    		{
    			title: "third data set",
    			fieldMappings: [{
    				fromField: "value",
    				toField: "value"
    			}, {
    				fromField: "volume",
    				toField: "volume"
    			}],
    			dataProvider: %CHART%_3,
    			categoryField: "date"
    		},
    
    		{
    			title: "fourth data set",
    			fieldMappings: [{
    				fromField: "value",
    				toField: "value"
    			}, {
    				fromField: "volume",
    				toField: "volume"
    			}],
    			dataProvider: %CHART%_4,
    			categoryField: "date"
    		}
    	],
    
    	panels: [{
    
    			showCategoryAxis: false,
    			title: "Value",
    			percentHeight: 70,
    
    			stockGraphs: [{
    				id: "g1",
    
    				valueField: "value",
    				comparable: true,
    				compareField: "value",
    				balloonText: "<a href="http://codex.wordpress.org/title">title</a>:<b><a href="http://codex.wordpress.org/value">value</a></b>",
    				compareGraphBalloonText: "<a href="http://codex.wordpress.org/title">title</a>:<b><a href="http://codex.wordpress.org/value">value</a></b>"
    			}],
    
    			stockLegend: {
    				periodValueTextComparing: "[[percents.value.close]]%",
    				periodValueTextRegular: "[[value.close]]"
    			}
    		},
    
    		{
    			title: "Volume",
    			percentHeight: 30,
    			stockGraphs: [{
    				valueField: "volume",
    				type: "column",
    				showBalloon: false,
    				fillAlphas: 1
    			}],
    
    			stockLegend: {
    				periodValueTextRegular: "[[value.close]]"
    			}
    		}
    	],
    
    	chartScrollbarSettings: {
    		graph: "g1"
    	},
    
    	chartCursorSettings: {
    		valueBalloonsEnabled: true
    	},
    
    	periodSelector: {
    		position: "left",
    		periods: [{
    			period: "MM",
    			selected: true,
    			count: 1,
    			label: "1 month"
    		}, {
    			period: "YYYY",
    			count: 1,
    			label: "1 year"
    		}, {
    			period: "YTD",
    			label: "YTD"
    		}, {
    			period: "MAX",
    			label: "MAX"
    		}]
    	},
    
    	dataSetSelector: {
    		position: "left"
    	}
    });

    and then after that i put the shortcode in the div where i wanted the chart,

    <?php echo do_shortcode('[amcharts id="serial-1"]'); ?>

    and now when i try to load the page then all get is the left part of the page
    first data set drop down comes and below comes the buttons like
    1 month
    1 year and so on
    but there is no chart.

    Now i should tell that what we want the chart to showcase are the points that the website user have earned along there challenge timeline with respect to time in months and then they zoom in the desired area but right now we are stuck and dont know how to go about it, please if you guys have any steps that we can follow to achieve these results.

    https://wordpress.org/plugins/amcharts-charts-and-maps/

  2. martynasma
    Member
    Plugin Author

    Posted 1 year ago #

    Hi,

    Do you have a link to this page? The code looks OK here.

Topic Closed

This topic has been closed to new replies.

About this Plugin

  • amCharts: Charts and Maps
  • Frequently Asked Questions
  • Support Threads
  • Reviews

About this Topic