adding colors to piechart
This commit is contained in:
		| @ -1,15 +1,17 @@ | |||||||
| <script setup> | <script setup> | ||||||
|  | import { ref } from "vue"; | ||||||
| 	 import {ref } from 'vue'; | import {w} from "../../dist/assets/_plugin-vue_export-helper-Bvj9NrzX.js"; | ||||||
| 	 const input = ref('') | const input = ref(""); | ||||||
|  | const statsOf = ref(""); | ||||||
|  | const statsBy = ref(""); | ||||||
|  |  | ||||||
|  |  | ||||||
| function inputKeyUp() { | function inputKeyUp() { | ||||||
| 		 let filter,ul,li,a,txtValue |   let filter, ul, li, a, txtValue; | ||||||
|   filter = input.value.toUpperCase(); |   filter = input.value.toUpperCase(); | ||||||
|   if (document.getElementById("myUL") != null) { |   if (document.getElementById("myUL") != null) { | ||||||
|     ul = document.getElementById("myUL"); |     ul = document.getElementById("myUL"); | ||||||
| 			li = ul.getElementsByTagName('li'); |     li = ul.getElementsByTagName("li"); | ||||||
|  |  | ||||||
|     // Loop through all list items, and hide those who don't match the search query |     // Loop through all list items, and hide those who don't match the search query | ||||||
|     for (let i = 0; i < li.length; i++) { |     for (let i = 0; i < li.length; i++) { | ||||||
| @ -25,71 +27,72 @@ | |||||||
| } | } | ||||||
|  |  | ||||||
| const mydata = { | const mydata = { | ||||||
|  |   chart:null, | ||||||
|   options: { |   options: { | ||||||
|  |     backgroundColor:null, | ||||||
|     theme: "light2", |     theme: "light2", | ||||||
|     animationEnabled: true, |     animationEnabled: true, | ||||||
|     title: { |     title: { | ||||||
|             text: "Visitors By Channel" |       fontColor: "white", | ||||||
|  |       text: statsOf.value + " By "+ statsBy.value, | ||||||
|     }, |     }, | ||||||
|           data: [{ |     data: [ | ||||||
|  |       { | ||||||
|         type: "pie", |         type: "pie", | ||||||
|         indexLabel: "{label} (#percent%)", |         indexLabel: "{label} (#percent%)", | ||||||
|         yValueFormatString: "#,##0", |         yValueFormatString: "#,##0", | ||||||
|             toolTipContent: "<span style='\"'color: {color};'\"'>{label}</span> {y}(#percent%)", |         indexLabelFontColor: "white", | ||||||
|  |         toolTipContent: | ||||||
|  |           "<span style='\"'color: {color};'\"'>{label}</span> {y}(#percent%)", | ||||||
|         dataPoints: [ |         dataPoints: [ | ||||||
|           { label: "Organic Traffic", y: 130631 }, |           { label: "Organic Traffic", y: 130631 }, | ||||||
|           { label: "Direct", y: 28874 }, |           { label: "Direct", y: 28874 }, | ||||||
|           { label: "Referral", y: 15467 }, |           { label: "Referral", y: 15467 }, | ||||||
|           { label: "Social", y: 10543 }, |           { label: "Social", y: 10543 }, | ||||||
|           { label: "Email", y: 5613 }, |           { label: "Email", y: 5613 }, | ||||||
|               { label: "Others", y: 8492 } |           { label: "Others", y: 8492 }, | ||||||
|             ] |         ], | ||||||
|           }] |       }, | ||||||
|  |     ], | ||||||
|   }, |   }, | ||||||
|   styleOptions: { |   styleOptions: { | ||||||
|     width: "100%", |     width: "100%", | ||||||
|           height: "360px", |     height: "100%", | ||||||
|  |   }, | ||||||
|  |   methods : { | ||||||
|  |     chartInstance(chart){ | ||||||
|  |       console.log(chart) | ||||||
|  |       this.chart = chart; | ||||||
|  |     }, | ||||||
|  |     update(){ | ||||||
|  |       this.chart.render(); | ||||||
|  |       setTimeout(this.update, 1000); | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  | }; | ||||||
| </script> | </script> | ||||||
|  |  | ||||||
| <template> | <template> | ||||||
|   <div id="main"> |   <div id="main"> | ||||||
|     <div id="profilePicture"> |     <div id="profilePicture"> | ||||||
|     <img src="/Clyde.png"> |       <img src="/Clyde.png" /> | ||||||
|     </div> |     </div> | ||||||
|     <div id="researcherInfos"> |     <div id="researcherInfos"> | ||||||
|     <div class="surrounded" > |       <div class="surrounded">John Doe</div> | ||||||
|       John Doe |       <div class="surrounded">Orcid : 12144-2144-12336-B</div> | ||||||
|  |       <div class="surrounded">Email : John.Doe@umons.ac.be</div> | ||||||
|     </div> |  | ||||||
|     <div class="surrounded" > |  | ||||||
|       Orcid : |  | ||||||
|       12144-2144-12336-B |  | ||||||
|  |  | ||||||
|     </div> |  | ||||||
|     <div class="surrounded" > |  | ||||||
|       Email : John.Doe@umons.ac.be |  | ||||||
|  |  | ||||||
|     </div> |  | ||||||
|  |  | ||||||
|       <div class="surrounded"> |       <div class="surrounded"> | ||||||
|         site : |         site : | ||||||
|         <a href="http://localhost:5173" style="color: #007aff">here</a> |         <a href="http://localhost:5173" style="color: #007aff">here</a> | ||||||
|  |  | ||||||
|       </div> |       </div> | ||||||
|     <div class="surrounded" > |       <div class="surrounded">Domain : physics, IT</div> | ||||||
|       Domain : physics, IT |       <div id="coAuthorList" class="surrounded">Co-authors list : D</div> | ||||||
|     </div> |  | ||||||
|     <div id="coAuthorList" class="surrounded"> |  | ||||||
|      Co-authors list : D |  | ||||||
|     </div> |  | ||||||
|  |  | ||||||
|     </div> |     </div> | ||||||
|     <div id="stats"> |     <div id="stats"> | ||||||
|       <div class="surrounded"> |       <div class="surrounded"> | ||||||
|       Stat type : <select name="stats" id="stats-select"> |         Stat type : | ||||||
|  |         <select @change="mydata.methods.update()" name="stats" id="stats-select" v-model="statsOf"> | ||||||
|           <option value="views">Views</option> |           <option value="views">Views</option> | ||||||
|           <option value="co-authors">Co-authors</option> |           <option value="co-authors">Co-authors</option> | ||||||
|           <option value="articles">Articles</option> |           <option value="articles">Articles</option> | ||||||
| @ -97,20 +100,25 @@ | |||||||
|         </select> |         </select> | ||||||
|       </div> |       </div> | ||||||
|       <div class="surrounded"> |       <div class="surrounded"> | ||||||
|       Class by: <select name="classedBy" id="classed-select"> |         Class by: | ||||||
|       <option value="years">Years</option> |         <select @change="mydata.methods.update()"  name="classedBy" id="classed-select" v-model="statsBy"> | ||||||
|  |           <option selected="selected" value="years">Years</option> | ||||||
|           <option value="months">Months</option> |           <option value="months">Months</option> | ||||||
|           <option value="topics">Topics</option> |           <option value="topics">Topics</option> | ||||||
|         </select> |         </select> | ||||||
|       </div> |       </div> | ||||||
|       <div id="statsPie"> |       <div id="statsPie"> | ||||||
| 			  <CanvasJSChart :options="mydata.options" @chart-ref="chartRef"/>  |         <CanvasJSChart :options="mydata.options" :style="mydata.styleOptions" @chart-ref="mydata.methods.chartInstance(this)"/> | ||||||
|  |  | ||||||
|  |  | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <div id="articles"> |     <div id="articles"> | ||||||
|     <input type="text" id="search-input" :onkeyup="inputKeyUp()" placeholder="search articles" v-model="input"> |       <input | ||||||
|  |         type="text" | ||||||
|  |         id="search-input" | ||||||
|  |         :onkeyup="inputKeyUp()" | ||||||
|  |         placeholder="search articles" | ||||||
|  |         v-model="input" | ||||||
|  |       /> | ||||||
|       <ul id="myUL"> |       <ul id="myUL"> | ||||||
|         <li><a href="#">Adele</a></li> |         <li><a href="#">Adele</a></li> | ||||||
|         <li><a href="#">Agnes</a></li> |         <li><a href="#">Agnes</a></li> | ||||||
| @ -122,13 +130,11 @@ | |||||||
|         <li><a href="#">Christina</a></li> |         <li><a href="#">Christina</a></li> | ||||||
|         <li><a href="#">Cindy</a></li> |         <li><a href="#">Cindy</a></li> | ||||||
|       </ul> |       </ul> | ||||||
|  |  | ||||||
|     </div> |     </div> | ||||||
|   </div> |   </div> | ||||||
| </template> | </template> | ||||||
|  |  | ||||||
| <style scoped> | <style scoped> | ||||||
|  |  | ||||||
| #main { | #main { | ||||||
|   display: grid; |   display: grid; | ||||||
|   grid-template-columns: 22% auto; |   grid-template-columns: 22% auto; | ||||||
| @ -137,11 +143,11 @@ | |||||||
|   width: 100%; |   width: 100%; | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
| #profilePicture { | #profilePicture { | ||||||
|   display: flex; |   display: flex; | ||||||
|   justify-content: center; |   justify-content: center; | ||||||
| } | } | ||||||
|  |  | ||||||
| #profilePicture img { | #profilePicture img { | ||||||
|   align-self: center; |   align-self: center; | ||||||
|   justify-self: center; |   justify-self: center; | ||||||
| @ -154,6 +160,7 @@ | |||||||
|   column-gap: 5px; |   column-gap: 5px; | ||||||
|   grid-template-rows: auto auto; |   grid-template-rows: auto auto; | ||||||
| } | } | ||||||
|  |  | ||||||
| .surrounded { | .surrounded { | ||||||
|   border: 2px solid black; |   border: 2px solid black; | ||||||
|   color: white; |   color: white; | ||||||
| @ -161,7 +168,8 @@ | |||||||
|   align-self: center; |   align-self: center; | ||||||
|   text-align: center; |   text-align: center; | ||||||
|   background-color: rgba(255, 255, 255, 0.09); |   background-color: rgba(255, 255, 255, 0.09); | ||||||
|   border-radius:20px;margin-bottom:10px; |   border-radius: 20px; | ||||||
|  |   margin-bottom: 10px; | ||||||
| } | } | ||||||
|  |  | ||||||
| .surrounded select { | .surrounded select { | ||||||
| @ -173,17 +181,16 @@ | |||||||
|   font-size: large; |   font-size: large; | ||||||
|   align-self: center; |   align-self: center; | ||||||
|   text-align: center; |   text-align: center; | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| #stats { | #statsPie { | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
| #articles { | #articles { | ||||||
|   background-color: orange; |   background-color: orange; | ||||||
| } | } | ||||||
|  |  | ||||||
| #search-input { | #search-input { | ||||||
|   width: 60%; |   width: 60%; | ||||||
|   font-size: 16px; |   font-size: 16px; | ||||||
| @ -191,6 +198,7 @@ | |||||||
|   border: 1px solid #ddd; |   border: 1px solid #ddd; | ||||||
|   margin-bottom: 12px; |   margin-bottom: 12px; | ||||||
| } | } | ||||||
|  |  | ||||||
| #myUL { | #myUL { | ||||||
|   list-style-type: none; |   list-style-type: none; | ||||||
|   padding: 0; |   padding: 0; | ||||||
| @ -198,17 +206,25 @@ | |||||||
| } | } | ||||||
|  |  | ||||||
| #myUL li a { | #myUL li a { | ||||||
|   border: 1px solid #ddd; /* Add a border to all links */ |   border: 1px solid #ddd; | ||||||
|   margin-top: -1px; /* Prevent double borders */ |   /* Add a border to all links */ | ||||||
|   background-color: #f6f6f6; /* Grey background color */ |   margin-top: -1px; | ||||||
|   padding: 12px; /* Add some padding */ |   /* Prevent double borders */ | ||||||
|   text-decoration: none; /* Remove default text underline */ |   background-color: #f6f6f6; | ||||||
|   font-size: 18px; /* Increase the font-size */ |   /* Grey background color */ | ||||||
|   color: black; /* Add a black text color */ |   padding: 12px; | ||||||
|   display: block; /* Make it into a block element to fill the whole list */ |   /* Add some padding */ | ||||||
|  |   text-decoration: none; | ||||||
|  |   /* Remove default text underline */ | ||||||
|  |   font-size: 18px; | ||||||
|  |   /* Increase the font-size */ | ||||||
|  |   color: black; | ||||||
|  |   /* Add a black text color */ | ||||||
|  |   display: block; | ||||||
|  |   /* Make it into a block element to fill the whole list */ | ||||||
| } | } | ||||||
|  |  | ||||||
| #myUL li a:hover:not(.header) { | #myUL li a:hover:not(.header) { | ||||||
|   background-color: #eee; |   background-color: #eee; | ||||||
| } | } | ||||||
|  |  | ||||||
| </style> | </style> | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user