• Publicidad

Reportes con gráficos en Excel

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Reportes con gráficos en Excel

Notapor mariel » 2012-03-17 10:29 @478

¿Algunos de ustedes podría darme alguna sugerencia de bibliotecas que exporten datos y generen gráficos a Excel así como WriteExcel de CPAN? Pero lo que deseo es que esa biblioteca pueda realizar gráficos 3D y también pueda colocarle la etiquetas de datos, lo más próximo a las que existen en Excel. Si es de pago, no importa.
mariel
Perlero nuevo
Perlero nuevo
 
Mensajes: 16
Registrado: 2011-05-02 14:35 @649

Publicidad

Re: Reportes con gráficos en Excel

Notapor explorer » 2012-03-17 13:49 @617

En 2D sí que lo hay (Spreadsheet::WriteExcel::Chart, Excel::Writer::XLSX::Chart), pero no en 3D. Está puesto como tarea "por hacer" en estas bibliotecas.

Otra opción es usando el interfaz OLE, manejando Excel directamente, con la biblioteca Win32::OLE. En esta página de Micro$oft tienes un ejemplo de un programa que crea una tabla dinámica y un gráfico.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use Win32::OLE;
  2.  
  3. # Start Excel and make it visible
  4. $xlApp = Win32::OLE->new('Excel.Application');
  5. $xlApp->{Visible} = 1;
  6.  
  7. # Create a new workbook
  8. $xlBook = $xlApp->Workbooks->Add;
  9.  
  10. # Our data that we will add to the workbook...
  11. $mydata = [["Item",     "Category", "Price"],
  12.            ["Nails",    "Hardware",  "5.25"],
  13.            ["Shirt",    "Clothing", "23.00"],
  14.            ["Hammer",   "Hardware", "16.25"],
  15.            ["Sandwich", "Food",      "5.00"],
  16.            ["Pants",    "Clothing", "31.00"],
  17.            ["Drinks",   "Food",      "2.25"]];
  18.  
  19. # Write all the data at once...
  20. $rng = $xlBook->ActiveSheet->Range("A1:C7");
  21. $rng->{Value} = $mydata;
  22.  
  23. # Create a PivotTable for the data...
  24. $tbl = $xlBook->ActiveSheet->PivotTableWizard(1, $rng, "", "MyPivotTable");
  25.  
  26. # Set pivot fields...
  27. $tbl->AddFields("Category", "Item");
  28. $tbl->PivotFields("Price")->{Orientation} = 4; # 4=xlDataField
  29.  
  30. # Create a chart too...
  31. $chart = $xlBook->Charts->Add;
  32. $chart->SetSourceData($rng, 2);
  33. $chart->{ChartType} = 70; # 3D-pie chart
  34. $chart->Location(2, "Sheet4");
  35.  
  36. # Wait for user input...
  37. print "Press <return> to continue...";
  38. $x = <STDIN>;
  39.  
  40. # Clean up
  41. $xlBook->{Saved} = 1;
  42. $xlApp->Quit;
  43. $xlBook = 0;
  44. $xlApp = 0;
  45.  
  46. print "All done.";
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4

Obviamente, la desventaja es que tienes que tener el Micro$oft Office instalado, y restringido a un ordenador con Windows.

No conozco otras opciones...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Reportes con gráficos en Excel

Notapor mariel » 2012-03-19 09:59 @458

¿Puedes indicarme cómo instalar Win32::OLE en CentOS y Windows? Y ¿esto causaría conflicto con Spreadsheet::WriteExcel? Esta librería la tengo instalada.
mariel
Perlero nuevo
Perlero nuevo
 
Mensajes: 16
Registrado: 2011-05-02 14:35 @649

Re: Reportes con gráficos en Excel

Notapor explorer » 2012-03-19 11:05 @504

Dudo mucho que puedas instalarla en CentOS: esta biblioteca dialoga con el protocolo OLE, que es propio de Micro$oft, así que solo podrás usarlo en Windows. Si quieres, lo puedes comprobar por ti mismo.

En Windows, depende de la distribución que estés usando. Si estás con ActivePerl, puedes usar el instalador gráfico PPM.

Y no, no hay conflictos entre bibliotecas.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Reportes con gráficos en Excel

Notapor mariel » 2012-03-29 14:12 @633

¿Dónde puedo encontrar ejemplos de la librería Win32::OLE con gráficos como, p.e., colocarle la etiqueta de datos?
mariel
Perlero nuevo
Perlero nuevo
 
Mensajes: 16
Registrado: 2011-05-02 14:35 @649

Re: Reportes con gráficos en Excel

Notapor explorer » 2012-03-29 19:08 @839

Usando Google, por ejemplo. Pero no hay muchos.

Uno con Excel.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 20 invitados

cron