ဒေတာမြင်ကွင်းတွင်, ရေဒါဂရပ် (သို့မဟုတ်ပင့်ကပုဒ်ဂရပ်) သည်အလွန်အသုံးဝင်သောဂရပ်တစ်ခုဖြစ်သည်။ PHP developer များအနေဖြင့် Imageopenpolygon () function ကို function ကို sadar deagrams များကိုတုပရန်အသုံးပြုနိုင်သည်။ ဤလုပ်ဆောင်ချက်သည် GD စာကြည့်တိုက်၏အစိတ်အပိုင်းတစ်ခုဖြစ်ပြီး၎င်းသည်ကျွန်ုပ်တို့ကိုရုပ်ပုံများကိုဆွဲဆောင်ရန်ခွင့်ပြုသည့် GD စာကြည့်တိုက်၏အစိတ်အပိုင်းဖြစ်သည်။ ကျိုးကြောင်းဆီလျော်သောဒေါင်လိုက်များကိုသတ်မှတ်ခြင်းအားဖြင့်ရေဒါမြေပုံ၏အကျိုးသက်ရောက်မှုကိုအောင်မြင်နိုင်သည်။ ဤဆောင်းပါးသည် PHP ၏ Impopenpolygon () function ကို အသုံးပြု. ရေဒါပုံဆွဲနည်းကိုမိတ်ဆက်ပေးလိမ့်မည်။
ပင့်ကူဇယားဟုလည်းလူသိများသောရေဒါဇယားသည် Multidimensional data data များကိုပြသသည့်ဇယားဖြစ်သည်။ ဒေတာအမှတ်တစ်ခုစီသည်ဂရပ်၏ရှုထောင့်တစ်ခုဖြစ်ပြီး Data တန်ဖိုးများသည် vertygon တစ်ခုတည်ဆောက်ရန် Vertices မှတစ်ဆင့်ချိတ်ဆက်ထားသည်။ အထူးသဖြင့်အရာဝတ်ထုများစွာကိုသို့မဟုတ်အတိုင်းအတာများစွာနှိုင်းယှဉ်ရန်လိုအပ်သည့်အခါမျိုးစုံ variable များအကြားဆက်နွယ်မှုများကိုပြသရန်သင့်တော်သည်။
Imageopenpolygon () function သည် php GD စာကြည့်တိုက်တွင် function တစ်ခုဖြစ်ပြီးများသောအားဖြင့် polygons များကိုရုပ်ပုံများဆွဲရန်အသုံးပြုသည်။ Polygon ၏ဒေါင်လိုက်ကိုညှိခြင်းဖြင့်ကွဲပြားခြားနားသောဒေတာရှုထောင့်ကိုလိုက်လျောညီထွေဖြစ်အောင်လုပ်ရန်ဤလုပ်ဆောင်မှုကိုကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။
imageopenpolygon($image, $points, $num_points, $color);
$ Image : ပုံရိပ်အရင်းအမြစ်ကိုပစ်မှတ်ထားသည်။
$ ရမှတ်များ - Vertex ကိုသွဒီနိတ်များပါ 0 င်သည့် array ။
$ numpoints : ဒေါင်လိုက်အရေအတွက်။
$ အရောင် : အနား၏အရောင်။
ပထမ ဦး စွာကျွန်ုပ်တို့သည်ပုံရိပ်အရင်းအမြစ်တစ်ခုကိုဖန်တီးရန်နှင့်ပုံအတွက်နောက်ခံအရောင်တစ်ခုသတ်မှတ်ရန်လိုအပ်သည်။
<?php
// a 500x500 အလွတ်
$image = imagecreatetruecolor(500, 500);
// နောက်ခံအရောင်ကိုအဖြူရောင်သို့သတ်မှတ်ပါ
$bgColor = imagecolorallocate($image, 255, 255, 255); // RGB (255, 255, 255) အဖြူကိုကိုယ်စားပြုတယ်
imagefill($image, 0, 0, $bgColor);
?>
ရေဒါဂရေယား၏ဗဟိုအချက်မှာဂရပ်၏ဗဟိုဖြစ်သည်။ ရှုထောင့်တစ်ခုစီ၏အချက်အလက်အချက်များသည်၎င်းတို့၏အကွာအဝေးကိုသူတို့၏တန်ဖိုးများအပေါ် အခြေခံ. ၎င်းတို့၏အကွာအဝေးကိုဆုံးဖြတ်ကြသည်။ ကျွန်ုပ်တို့သည်ဂရပ်ကို (6) ရှုထောင့်သို့ ခွဲ. အချင်းလွှာများကို 200 အထိခွဲဝေပါဆိုပါစို့။
<?php
// ရေဒါမြေပုံစင်တာစင်တာကိုသွဒီနိတ်
$centerX = 250;
$centerY = 250;
$radius = 200;
?>
ကျွန်ုပ်တို့တစ်ခုချင်းစီကိုရှုထောင့်များအတွက်ဒေတာအမှတ်များ၏သွဒီနိတ်များကိုတွက်ချက်ရန်လိုအပ်သည်။ ဤညှိနှိုင်းမှုများသည်အနား၏ဒေါင်လိုက်ကိုဆုံးဖြတ်သည်။
<?php
// အဲဒီမှာယူဆတယ် 6 တစ်ခုချင်းစီကိုရှုထောင့်အတွက်ဒေတာ
$data = [80, 70, 90, 60, 85, 75]; // 每တစ်ခုချင်းစီကိုရှုထောင့်အတွက်ဒေတာ值 (အကျယ်ည:0 - 100)
// 将每တစ်ခုချင်းစီကိုရှုထောင့်အတွက်ဒေတာ映射到半径
$points = [];
$numPoints = count($data);
for ($i = 0; $i < $numPoints; $i++) {
// ထောင့်တွက်ချက်
$angle = (2 * M_PI * $i) / $numPoints;
// တစ်ခုချင်းစီကိုဒေတာအမှတ်၏သွဒီနိတ်တွက်ချက်
$x = $centerX + cos($angle) * ($radius * $data[$i] / 100);
$y = $centerY + sin($angle) * ($radius * $data[$i] / 100);
// Vertex ကိုသွဒီနိတ်များကိုသိမ်းဆည်းပါ
$points[] = $x;
$points[] = $y;
}
?>
နောက်တစ်ခုက Polygons ကိုဆွဲရန်နှင့်ဤဒေါင်လိုက်တွင်ပါ 0 င်ရန် Imageopenpolygon () function ကိုအသုံးပြုသည်။
<?php
// polygon ၏အရောင်ကိုအပြာရောင်သို့သတ်မှတ်ပါ
$polygonColor = imagecolorallocate($image, 0, 0, 255);
// ရေဒီယိုကားချပ်များ၏အနားများဆွဲခြင်း
imageopenpolygon($image, $points, $numPoints, $polygonColor);
?>
နောက်ဆုံးတွင်ကျွန်ုပ်တို့သည်ထုတ်လုပ်ထားသောပုံရိပ်ကိုထုတ်ပေးသည်။
<?php
// output ကိုပုံရိပ်ဖြစ်ပါတယ် PNG ပမာဏ
header('Content-Type: image/png');
imagepng($image);
// ပုံရိပ်အရင်းအမြစ်များကိုဖျက်ဆီး
imagedestroy($image);
?>
အထက်ပါကုဒ်နံပါတ်များကိုပေါင်းစပ်ပါ။ နောက်ဆုံးကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
<?php
// ပုံအရင်းအမြစ်များကိုဖန်တီးပါ
$image = imagecreatetruecolor(500, 500);
// နောက်ခံအရောင်များကိုသတ်မှတ်ပါ
$bgColor = imagecolorallocate($image, 255, 255, 255); // RGB (255, 255, 255) အဖြူကိုကိုယ်စားပြုတယ်
imagefill($image, 0, 0, $bgColor);
// ရေဒါမြေပုံစင်တာစင်တာကိုသွဒီနိတ်和半径
$centerX = 250;
$centerY = 250;
$radius = 200;
// အချက်များ
$data = [80, 70, 90, 60, 85, 75]; // 每တစ်ခုချင်းစီကိုရှုထောင့်အတွက်ဒေတာ值 (အကျယ်ည:0 - 100)
// 计算အချက်များ点坐标
$points = [];
$numPoints = count($data);
for ($i = 0; $i < $numPoints; $i++) {
$angle = (2 * M_PI * $i) / $numPoints;
$x = $centerX + cos($angle) * ($radius * $data[$i] / 100);
$y = $centerY + sin($angle) * ($radius * $data[$i] / 100);
$points[] = $x;
$points[] = $y;
}
// အရောင်ထားပါ
$polygonColor = imagecolorallocate($image, 0, 0, 255);
// Polygons ဆွဲပါ
imageopenpolygon($image, $points, $numPoints, $polygonColor);
// output ကိုပုံ
header('Content-Type: image/png');
imagepng($image);
// အရင်းအမြစ်များကိုအခမဲ့
imagedestroy($image);
?>
PHP ၏ Impopenpolygon () function ကိုမှတစ်ဆင့်ကျွန်ုပ်တို့သည် Addar ဂရပ်များကိုအလွယ်တကူတုန့်ပြန်နိုင်ပြီးကျွန်ုပ်တို့အား MultidDimensional data ကိုပိုမိုကောင်းမွန်စွာပြသရန်ကူညီနိုင်သည်။ လက်တွေ့ကျသောအပလီကေးရှင်းများ၌သင်လိုအပ်ချက်များနှင့်အညီရှုထောင့်များ, အရောင်များနှင့်အချက်အလက်များနှင့်ဒေတာမြေပုံကိုချိန်ညှိနိုင်သည်။ ပိုမိုရှုပ်ထွေးသောရေဒါမြေပုံကိုဖန်တီးနိုင်သည်။