Presentación de imágenes de un gráfico (Controles Chart)
En el control Chart para ASP.NET, puede definir la manera en que el control Chart presenta la imagen del gráfico. Para hacerlo, use la propiedad RenderType. Hay tres opciones disponibles.
Opción ImageTag
De forma predeterminada, el control Chart para ASP.NET utiliza este método para presentar imágenes de gráfico. Este es el método de presentación más sencillo. Almacena la imagen del gráfico presentada en memoria o como archivo temporal. Con ello mejora el rendimiento en los gráficos con apariencia y datos estáticos a los que se tiene acceso con frecuencia.
Uso
Establezca la propiedad RenderType en ImageTag. Puede especificar cómo se administran las imágenes presentadas. Para obtener más información, vea Administración de archivos de imagen.
Opción BinaryStreaming
Esta opción hace que la imagen del gráfico se transmite directamente al cliente sin estar guardado en el servidor. Esto hace que, cuando se solicite la página ASP.NET, esta se comporte como una imagen estática, permitiendo así colocar la página ASP.NET en cualquier etiqueta<img> de HTML. Por ejemplo:
<img src="DetailedChart.aspx" />
Use esta opción para mejorar el rendimiento cuando la apariencia y datos del gráfico cambien con frecuencia o cuando se utilice un clúster de servidores. Sin embargo, tiene las siguientes desventajas:
Ningún almacenamiento en caché de la imagen.
Ninguna compatibilidad con AJAX o con características de interactividad. Para usar las características de interactividad, debe utilizar esta opción junto con la opción ImageMap.
No puede compartir el control Chart con otro elemento HTML en el mismo archivo de origen.
Uso
Al utilizar esta opción, la página ASP.NET que contiene el control Chart debe contener únicamente los siguientes elementos:
La directiva @ Page
El elemento <asp.Chart>
Cualquier código en tiempo de ejecución
El siguiente ejemplo muestra un ASP.NET que contiene un control Chart binario transmitido.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="_Default" %>
<asp:Chart ID="Chart2" runat="server" RenderType="BinaryStreaming">
<series>
<asp:Series Name="Series1" ChartArea="ChartArea1">
<Points>
<asp:DataPoint YValues="4" />
<asp:DataPoint YValues="5" />
</Points>
</asp:Series>
</series>
<chartareas>
<asp:ChartArea Name="ChartArea1" />
</chartareas>
</asp:Chart>
Opción ImageMap
Este método se usa si desea utilizar las características de interactividad con la opción BinaryStreaming. En esta opción, se usan dos páginas ASP.NET:
La primera página contiene el gráfico binario transmitido. Esta página usa la opción BinaryStreaming en la propiedad RenderType del control Chart.
Las segunda página solicita el gráfico binario transmitido y aplica áreas de asignación a la imagen del gráfico transmitido.
Uso
Para configurar las páginas ASP.NET para la opción ImageMap
Cree la primera página utilizando la opción BinaryStreaming en el control Chart.
En la primera página, establezca todos los datos, apariencia y propiedades de interactividad como lo haría en un gráfico totalmente personalizado e interactivo, como información sobre herramientas de serie. Agregue también todo el código en tiempo de ejecución a la primera página o su archivo de código subyacente.
Copie y pegue el control Chart de la primera página en la segunda página.
Copie y pegue todo el código del tiempo de ejecución de la primera página en la segunda página o su archivo de código subyacente.
En la segunda página, establezca la propiedad RenderType de control Chart en ImageMapy la propiedad ImageLocation en la ubicación de la primera página.
Nota
Para sincronizar la imagen transmitida y el mapa de imagen, los datos de los controles Chart y las propiedades de apariencia, así como el código en tiempo de ejecución, deben ser idénticos entre las dos páginas ASP.NET.