AMCHARTS+MYSQL+PHP的使用实例

10 篇文章 0 订阅
9 篇文章 0 订阅
这是我写的统计曲线实例。欢迎交流。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<link rel="stylesheet" media="all" type="text/css" href="../../zhpt.css" />
<?php
if (!isset($_SESSION['ywclusername']))//判断是否登录
		{
			header("location:../../login.php");
			exit;
		}
?>

<?php //乡镇大气曲线显示
	
	include("../../configywcl.php");
	$xzapi=$jc;//大气监测站传值
	$sqlgroups="select rq,nian,yue,ri,$xzapi from xzdq order by rq";
	//echo $sqlgroups;
	$resultgroups=mysql_query($sqlgroups);
	$numrows=mysql_num_rows($resultgroups);
	if ($numrows>0)
	{		
		while($data=mysql_fetch_array($resultgroups))
		{
			$count++;
			$nian=$data['nian'];
			$yue=$data['yue']-1;
			$ri=$data['ri'];
			$api=$data["$xzapi"];
			$rq="{date: new Date($nian,$yue,$ri),api:$api}";
			//echo "$rq</br>";
			//$rq=$nian.','.$yue.','$ri;
			if ($count<$numrows)
			{				
				$shuju=$shuju."$rq,";
			}
			else
			{
				$shuju=$shuju."$rq";
			}
		}
	}
		$shuju="[$shuju];";
		//echo $shuju;

?>  
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title><?php echo $dqjcd;?>PM10质量曲线</title>
        <link rel="stylesheet" href="style.css" type="text/css">
        <script src="../amcharts/amcharts.js" type="text/javascript"></script>
        <script src="../amcharts/raphael.js" type="text/javascript"></script>
        <script type="text/javascript">
        
            var chart;
            
			var chartData = [];
			
            var chartCursor;
			var average = 100;
			
            AmCharts.ready(function () {
                // generate some data first
                generateChartData();

                // SERIAL CHART    
                chart = new AmCharts.AmSerialChart();
                chart.pathToImages = "../amcharts/images/";
                chart.zoomOutButton = {
                    backgroundColor: '#000000',
                    backgroundAlpha: 0.15
                };
                chart.dataProvider = chartData;
                chart.categoryField = "date";

                // listen for "dataUpdated" event (fired when chart is rendered) and call zoomChart method when it happens
                chart.addListener("dataUpdated", zoomChart);

                // AXES
                // category
                var categoryAxis = chart.categoryAxis;
                categoryAxis.parseDates = true; // as our data is date-based, we set parseDates to true
                categoryAxis.minPeriod = "DD"; // our data is daily, so we set minPeriod to DD
                categoryAxis.dashLength = 1;
                categoryAxis.gridAlpha = 0.15;
                categoryAxis.axisColor = "#DADADA";
				
				

				
                // value                
                var valueAxis = new AmCharts.ValueAxis();
                valueAxis.axisAlpha = 0.2;
                valueAxis.dashLength = 1;
                chart.addValueAxis(valueAxis);
				
				 // GUIDE for average
                var guide = new AmCharts.Guide();
                guide.value = average;
                guide.lineColor = "#aa0000";
                guide.dashLength = 4;
                guide.label = "二级";
                guide.inside = true;
                guide.lineAlpha = 4;
                valueAxis.addGuide(guide);

                // GRAPH
                var graph = new AmCharts.AmGraph();
                graph.title = "空气质量曲线";
                graph.valueField = "api";
                graph.bullet = "round";
                graph.bulletBorderColor = "#FFFFFF";//统计图边的颜色
                graph.bulletBorderThickness = 2;
                graph.lineThickness = 2;
                graph.lineColor = "#0000aa";//折线颜色
                graph.negativeLineColor = "#0352b5"; 
                graph.hideBulletsCount = 50; // this makes the chart to hide bullets when there are more than 50 series in selection
                chart.addGraph(graph);

                // CURSOR 鼠标手势
                chartCursor = new AmCharts.ChartCursor();
                chartCursor.cursorPosition = "mouse";
                chart.addChartCursor(chartCursor);

                // SCROLLBAR 上部-滚动选择条
                var chartScrollbar = new AmCharts.ChartScrollbar();
                chartScrollbar.graph = graph;
                chartScrollbar.scrollbarHeight = 40;
                chartScrollbar.color = "#ffffff";
                chartScrollbar.autoGridCount = true;
                chart.addChartScrollbar(chartScrollbar);

                // WRITE
                chart.write("chartdiv");
            });
			
			
            // 赋值
            function generateChartData() {
                chartData=<?php echo $shuju;?>;
            }
			

            // this method is called when chart is first inited as we listen for "dataUpdated" event
            function zoomChart() {
                // different zoom methods can be used - zoomToIndexes, zoomToDates, zoomToCategoryValues
                chart.zoomToIndexes(chartData.length - 40, chartData.length - 1);
            }
            
            // changes cursor mode from pan to select
            function setPanSelect() {
                if (document.getElementById("rb1").checked) {
                    chartCursor.pan = false;
                    chartCursor.zoomable = true;
                    
                } else {
                    chartCursor.pan = true;
                }
                chart.validateNow();
            }            
        </script>
    </head>
    
    <body>
  <table width="100%" border="0">
  <tr>
    <td><h1 align="center"><a href="../../yw_jcz_xzdq.php"><img src="../../images/undo.png"class="t3"/></a><?php echo $dqjcd?> PM10曲线图</h1></td>
  </tr>
  </table>

<div id="chartdiv" style="width: 100%; height: 400px;"></div>
        <div id="chartdiv" style="margin-left:400px;">
            <input type="radio" checked="true" name="group" id="rb1" οnclick="setPanSelect()">选择
            <input type="radio" name="group" id="rb2" οnclick="setPanSelect()">拖拽
		</div>        
<?php
	include("../../foot.php")
?>


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用AmCharts构建地图需要遵循以下步骤: 1. 引入AmCharts的库文件。可以从AmCharts官网下载或者使用CDN链接引入。 2. 创建一个div容器来承载地图。 3. 创建一个地图对象,并设置地图的属性,例如地图类型、背景色、缩放等级等。 4. 加载地图数据。可以使用AmCharts提供的地图数据或者自己的地图数据。 5. 创建图层和图像对象,将地图数据显示在地图上。可以使用AmCharts提供的图层和图像对象,也可以自定义图层和图像对象。 6. 设置图层和图像对象的属性,例如颜色、边框、标签等。 7. 绑定事件处理程序,例如鼠标单击、鼠标移动等。 8. 将地图对象添加到div容器中显示。 下面是一个简单的例子: ```javascript // 引入AmCharts库文件 <script src="https://cdn.amcharts.com/lib/4/core.js"></script> <script src="https://cdn.amcharts.com/lib/4/maps.js"></script> <script src="https://cdn.amcharts.com/lib/4/geodata/worldLow.js"></script> // 创建一个div容器 <div id="chartdiv" style="width: 100%; height: 500px;"></div> // 创建地图对象 var chart = am4core.create("chartdiv", am4maps.MapChart); // 设置地图属性 chart.projection = new am4maps.projections.Miller(); chart.background.fill = am4core.color("#F5F5F5"); chart.zoomLevel = 2; // 加载地图数据 chart.geodata = am4geodata_worldLow; // 创建图层和图像对象 var polygonSeries = chart.series.push(new am4maps.MapPolygonSeries()); var polygonTemplate = polygonSeries.mapPolygons.template; // 设置图层和图像对象属性 polygonTemplate.fill = am4core.color("#74B266"); polygonTemplate.stroke = am4core.color("#FFFFFF"); polygonTemplate.strokeWidth = 1; // 绑定事件处理程序 polygonTemplate.events.on("hit", function(ev) { console.log("Clicked on ", ev.target.dataItem.dataContext.name); }); // 将地图对象添加到div容器中显示 chart.homeZoomLevel = 2; chart.homeGeoPoint = { longitude: 0, latitude: 0 }; chart.seriesContainer.draggable = false; chart.seriesContainer.resizable = false; ``` 这个例子创建了一个包含世界地图的AmCharts地图,并且设置了地图的属性、图层和图像对象的属性,并且绑定了一个单击事件处理程序。你可以根据自己的需要调整这个例子。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值