طريقه رسم انواع نمودار در Php

iroweb

Member
سلام دوستان . توي اين مبحث از دوستان دعوت ميكنم لطفا طريقه رسم انواع نمودارها اعم از دايره اي ، خطي و ميله اي و ... رو آموزش بدن .

خيلي كاربردشون زياده .
موفق باشيد .
 

iroweb

Member
من آموزش نمودار خطی بازدید ها رو اینجا نوشتم خواستی ببین
http://www.30noohe.com/2007/03/grath_visitor.php



سلام عزيزم . اينو مطالعه كردم . واقعا جالب بود . فقط يك كم كدي كه نوشتي پيچدست .:lol:

ببين ميتوني نمودار دايره مثل مثلا وبگذر كدشو بنويسي . اگر بتوني عالي ميشه .

درضمن بهتون تبريك ميگم . البته ناگفته نمونه من كدو تست كردم خطا ميداد .:sad:

موفق باشيد .
 

30noohe

Member
باید یکم روش فکر کنم آخه این یکی سخت تره.!!!
در مورد این که برات خطا میده بگو چه خطایی
به احتمال اگه خطایی که مد نظرمه رو میده باید تا فردا صبر کنی یا اگه روی لوکال تست می کنی ساعت رو به فردا تغییر بدی!!
 

30noohe

Member
یه راه به نظرم رسید فقط اطلاعات ریاضیم چون در حد اول دبیرستان هست نمیتونم درست در بیارم
معادله ی دایره چیه؟؟!! اصلا معادله داره؟؟ اگه اینو بگی شاید بتونم بسازم
منظورم معادله ی اون خطی یه که روی دایره هستا!!!
 
نمودار دایره به مرکز 0و0 و شعاع k
x^2+y^2=k^2
البته برای اینکه نمودار دایره ای بکشی باید از درجه استفاده کنی . مثلا اگر که سه مقدار رو می خوای تو اون نمودار نشون بدی باید مجموع اون سه رو 360 بگیری و بعد هم از طریق تناسب برای هرکدوم اونا یه عدد پیدا کنی. حالا اگر مثلا اولی 120 درجه و دومی 180 و سومی 60 بود اول یه خط با زاویه 60 درجه نسبت به محور x می کشی و محدوده بین 0و0 تا اون رو یه رنگ می کنی و بعد یه خط با 120+180 یا به عبارتی 300 درجه می کشی و بین 120 تا اون رو یه رنگ می کنی . من زیاد پی اچ پی بلد نیستم ولی می دونم این کار تو سی پلاس پلاس و پاسکال ساده هست چون خودم کردم!
ضمنا تو چی رو می خوای تو نمودار دایره ای نشون بدی این مساله مهم هست!
 

alireza82

Well-Known Member
با تابع های gd میشه این کار ها رو کرد ولی در کل توابع جاوا راحت تر و خوشگل ترن
یه تابع جالب جاوا plotr هست که هم کار باهاش راحته هم به راحتی میشه تو اسکریپت های php ازشون استفاده کرد
انواع نمودار ها رو هم داره از میله ای و خطی و دایره ای ...
هر چی که بخوای
موفق باشی
 

alireza82

Well-Known Member
اقا راستی به prototype کتابخونه برای کار با plotr احتیاج دارید
 

30noohe

Member
فکر نکنم که نیازی به این فور مول باشه.
یه فورمول جدید از دادشم (پیش دانشگاهی)گرفتم که حتما می تونم درستش کنم
انشا الله فردا کدشو میزارم اینجا
 

30noohe

Member
با تابع های gd میشه این کار ها رو کرد ولی در کل توابع جاوا راحت تر و خوشگل ترن
یه تابع جالب جاوا plotr هست که هم کار باهاش راحته هم به راحتی میشه تو اسکریپت های php ازشون استفاده کرد
انواع نمودار ها رو هم داره از میله ای و خطی و دایره ای ...
هر چی که بخوای
موفق باشی

به نظر من آدم اگه خودش بسازه بهتر از اینه که از توابع آماده استفاده کنه!!!!
 

30noohe

Member
نمودار دایره به مرکز 0و0 و شعاع k
x^2+y^2=k^2
البته برای اینکه نمودار دایره ای بکشی باید از درجه استفاده کنی . مثلا اگر که سه مقدار رو می خوای تو اون نمودار نشون بدی باید مجموع اون سه رو 360 بگیری و بعد هم از طریق تناسب برای هرکدوم اونا یه عدد پیدا کنی. حالا اگر مثلا اولی 120 درجه و دومی 180 و سومی 60 بود اول یه خط با زاویه 60 درجه نسبت به محور x می کشی و محدوده بین 0و0 تا اون رو یه رنگ می کنی و بعد یه خط با 120+180 یا به عبارتی 300 درجه می کشی و بین 120 تا اون رو یه رنگ می کنی . من زیاد پی اچ پی بلد نیستم ولی می دونم این کار تو سی پلاس پلاس و پاسکال ساده هست چون خودم کردم!
ضمنا تو چی رو می خوای تو نمودار دایره ای نشون بدی این مساله مهم هست!

فکر نکنم فرقی داشته باشه چیو نشون بدم
ولی خوب مثلا مرورگر ها
 

30noohe

Member
اینم از کد
حوصله نداشتم رنگ آمیزی کنم و هر قسمت رو جدا درصد رو نشون بدم
امیدوارم بقیشو خودت بلد باشی
PHP:
<?php
//Enter info::
$x_c=250;//x az markaze dayere
$y_c=250;//y az markaze dayere
$h_and_w=400;//ertefa va arze dayere
$w_pic=500;
$h_pic=500;
$im=imagecreate($w_pic,$h_pic);
$white=imagecolorallocate($im,255,255,255);
$black=imagecolorallocate($im,0,0,0);
imagefill($im,0,0,$black);
imagearc($im,$x_c,$y_c,$h_and_w,$h_and_w,0,360,$white);
function get_mokhtasat($daraje,$x_a,$y_a,$x_c,$y_c)
{
  $sin=sin(deg2rad($daraje));
  $cos=cos(deg2rad($daraje));
  $x_p=$x_c+($x_a-$x_c)*$cos-($y_a-$y_c)*$sin;
  $y_p=$y_c+($x_a-$x_c)*$sin+($y_a-$y_c)*$cos;
  return array($x_p,$y_p);
}
//results::
$result=array('ff'=>10,'ie'=>10,'ss'=>10,'pp'=>30,'uu'=>20,'ff'=>10);
//res<-
$x_a=$x_c+($h_and_w/2);
$y_a=$y_c;
imageline($im,$x_c,$y_c,$x_a,$y_a,$white);
$c=count($result);
foreach($result as $moroorgar=>$darsad)
{
  $daraje=$daraje+(360*$darsad)/100;
  $p=get_mokhtasat($daraje,$x_a,$y_a,$x_c,$y_c);
  $x_p=$p[0];
  $y_p=$p[1];
  imageline($im,$x_c,$y_c,$x_p,$y_p,$white);
  
}
header('content-type:image/png');
imagepng($im);
?>
فقط مقادیر $result بر حسب درصد هست!!!!
 
آخرین ویرایش:

iroweb

Member
یه راه به نظرم رسید فقط اطلاعات ریاضیم چون در حد اول دبیرستان هست نمیتونم درست در بیارم
معادله ی دایره چیه؟؟!! اصلا معادله داره؟؟ اگه اینو بگی شاید بتونم بسازم
منظورم معادله ی اون خطی یه که روی دایره هستا!!!


سلام . ممنون میشم اگر زودتر درست کنید .
 
از این راحت تر دیگه پیدا نمیشه:D
منظورم jpgraph هست ، تو سورس فورگ یا گوگل بگردید و پیداش کنید.
رایگان و اپن سورس! عدد بده تا صدها نوع نمودار برات بکشه!
 

جدیدترین ارسال ها

بالا