Статья

Статья ASP.NET пример построения круговой диаграммы

Работа добавлена на сайт bukvasha.net: 2015-10-29

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 11.11.2024



ASP.NET: пример построения круговой диаграммы

Христофоров Юрий

Ниже будет показано, как можно в ASP.NET приложении, используя графические методы GDI+, нарисовать круговую диаграмму. Это может быть полезно, например, для наглядного представления данных.

Файл pie.aspx (написан на VB.NET):

<%@ Page Language="VB" ContentType="image/jpeg" %>

<%@ Import Namespace="System.Drawing" %>

<%@ Import Namespace="System.Drawing.Imaging" %>

<%@ Import Namespace="System.Drawing.Drawing2D" %>

<%

Response.Clear()

Dim height As Integer = 200

Dim width As Integer = 320

Dim x As Integer

Dim i As Integer

Dim start_angle As Integer

Dim pie_size As Integer

Dim sub_total As Integer

Dim offset As Integer

Dim diameter As Integer

Dim arrData() As Integer = {75, 45, 19, 10, 55} ' значения

Dim arrProcent(4) As Integer

Dim total As Integer

Dim arrColor() As Object = {Color.Salmon, Color.SeaGreen, Color.Gold, Color.Maroon, Color.Orchid}

Dim arrTitle() As String = {"Пункт1", "Пункт2", "Пункт3", "Пункт4", "Пункт5"}

Dim rect As Object

sub_total = 0

start_angle = 0

offset = 20

diameter = 170

total = 0

Dim bmp As New Bitmap(width, height, PixelFormat.Format32bppArgb)

Dim g as Graphics = Graphics.FromImage(bmp)

Dim fnt As New Font("Arial", 8)

Dim sb As New SolidBrush(Color.Blue)

g.Clear(Color.White)

g.SmoothingMode = SmoothingMode.HighQuality

' сумма значений в массиве

For i = 0 To arrData.GetUpperBound(0)

total = total + arrData(i)

Next

' проценты

For i = 0 To arrData.GetUpperBound(0)

arrProcent(i) = Math.Round((arrData(i)/total)*100)

Next

For i = 0 To arrProcent.GetUpperBound(0)

sub_total = sub_total + arrProcent(i)

pie_size = sub_total*360 / 100 - start_angle

g.FillPie(New SolidBrush(arrColor(i)), offset, offset, diameter, diameter, start_angle, pie_size)

start_angle = start_angle + pie_size

rect = New Rectangle(offset + diameter + 10, offset + i*20, 15, 15)

g.FillRectangle(New SolidBrush(arrColor(i)), rect)

g.DrawString(arrTitle(i) & " - [" & arrProcent(i) & "%]", fnt, sb, offset + diameter + 10 + 20, offset + i*20)

Next

bmp.Save(Response.OutputStream, ImageFormat.Jpeg)

g.Dispose()

bmp.Dispose()

Response.End()

%>



Результат работы скрипта:

Результат работы скрипта

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://www.activex.net.ru/



1. Контрольная работа на тему Представители класса Насекомые как объекты научно познавательных т
2. Реферат Первоисточник по культурологии Л. Толстой. Путь жизни
3. Доклад Первобытнообщинный строй и восточные славяне на территории Московской области
4. Реферат на тему Different Image Of The Wife Between Sixteenth
5. Реферат Untitled Essay Research Paper Solar cells today
6. Диплом Сравнительный анализ современных методов учета себестоимости
7. Реферат на тему The Effects Of Steroids On Muscle Training
8. Реферат на тему Компьютерные конференции и телеконференции
9. Сочинение Не делай другому того, чего не желаешь для себя
10. Реферат Базисные категории методики